home *** CD-ROM | disk | FTP | other *** search
Text File | 1997-01-12 | 296.3 KB | 7,409 lines |
- Interrupt List, part 13 of 16
- Copyright (c) 1989,1990,1991,1992,1993,1994,1995,1996,1997 Ralf Brown
- --------*-61---------------------------------
- INT 61 - reserved for user interrupt
- --------b-61---------------------------------
- INT 61 - Atari Portfolio - EXTENDED BIOS
- Desc: provides subfunctions such as turning off the machine, accessing
- internal variables, and mapping memory cards
- SeeAlso: INT 60"Atari",AH=00h"Portfolio",AH=08h"Portfolio",AH=0Dh"Portfolio"
- SeeAlso: AH=11h"Portfolio",AH=15h"Portfolio",AH=19h"Portfolio"
- SeeAlso: AH=1Bh"Portfolio",AH=24h"Portfolio",AH=2Ch"Portfolio"
- SeeAlso: AH=30h"Portfolio"
- --------b-61---------------------------------
- INT 61 - TI Professional PC - FACTORY ROM DATA AREA POINTER (NOT A VECTOR!)
- Desc: the low word of this vector contains the segment of the RAM data area
- to be used by the expansion ROM at F400h:0000h, and the high word
- contains the length of the data area; this segment and size are
- both set to 0000h if no ROM is installed at F400h:0000h
- SeeAlso: INT 60"TI Professional PC",INT 62"TI Professional"
- SeeAlso: INT 66"TI Professional PC"
- --------b-61---------------------------------
- INT 61 - HP 95LX System Manager - LOAD DS
- SeeAlso: INT 0F"HP 95LX",INT 60/DI=0102h"HP 95LX"
- --------r-61---------------------------------
- INT 61 - JPI TopSPEED Modula-2 v1 - PROCEDURE EXIT TRAP
- SeeAlso: INT 60"JPI"
- --------d-61---------------------------------
- INT 61 - Adaptec and OMTI controllers - DRIVE 0 DATA
- Desc: this vector stores the second four bytes of the parameter table for
- hard disk 0
- SeeAlso: INT 60"Adaptec",INT 62"Adaptec",INT 63"Adaptec",#0629
- --------I-61---------------------------------
- INT 61 - Sangoma CCIP (CCPOP 3270 resident module) INTERFACE
- BX:DX -> control block
- SeeAlso: INT 67"Sangoma"
- --------v-61---------------------------------
- INT 61 - VIRUS - "SEMTEX"/"Screen Trasher" - INT 21h SUBSTITUTE
- Note: the virus copies the original INT 21h vector into INT 61h
- SeeAlso: INT 21/AH=00h,INT 21/AH=25h,INT 60"VIRUS",INT 6B"VIRUS"
- --------U-61---------------------------------
- INT 61 - PC-Magazin - PAGE, SWAPx
- details not yet available
- Program: PAGE and SWAPx are utilities from PC-Magazin, the German edition of
- PC Magazine, issue 47/85, page 31
- SeeAlso: INT 66"INCA"
- --------N-61---------------------------------
- INT 61 - TCPOpen kernel - API
- ES:BX -> request packet (see #2566)
- Program: TCPOpen is a TCP/IP protocol stack by Lanera
- Range: INT 60 to INT 7F, selected by configuration file
- Note: there does not appear to be an installation check, though function
- FFFFh can be used to verify that the software is indeed functioning
-
- Format of TCPOpen request packet:
- Offset Size Description (Table 2566)
- 00h 8 BYTEs ???
- 08h WORD function number (0000h-001Ah or FFF9h-FFFFh)
- 0Ah WORD ???
- 0Ch 2 BYTEs ???
- 0Eh WORD (ret) return code
- 10h 2 BYTEs ???
- 12h WORD ???
- 14h WORD (ret) 0001h if requested function complete
- 16h WORD (ret) ???
- 18h 6 BYTEs ???
- 1Eh DWORD -> ???
- 22h WORD ??? or 0000h
- 24h WORD (ret) ???
- SeeAlso: #2567
-
- (Table 2567)
- Call TCPOpen Function FFFFh: installation verification
- Return: offset 10h = BEEFh
- offset 14h = 0001h
- offset 24h = ???
- Index: installation check;TCPOpen kernel
- --------N-61---------------------------------
- INT 61 - XFS v1.76 - XFSKRNL.EXE - API
- AX = function
- 8000h installation check???
- Return: AX = 0000h
- 8001h ???
- ES:DI -> DWORD ???
- Return: AX = status???
- 8002h ???
- BX = ???
- CX = ???
- ES:DI -> ???
- Return: AX = status???
- 8003h ???
- BX = ???
- CX = ???
- ES:DI -> ???
- Return: AX = status???
- 8004h ???
- BX = ???
- Return: AX = status???
- 8005h wait until ???
- Return: DX:AX = ???
- 8006h get ???
- Return: DX:AX -> ??? record
- 8007h set IP address??? (or htonl/ntohl)
- DX:BX = IP address???
- Return: DX:AX = byte-swapped IP address
- 8008h set IP address??? (or htonl/ntohl)
- DX:AX = IP address???
- Return: DX:AX = byte-swapped IP address
- 8009h ???
- ES:DI -> ???
- Return: DX:AX = ???
- 800Ah ???
- 800Bh ???
- Return: DX:AX = ???
- 800Ch ???
- 800Dh ???
- 800Eh ???
- 800Fh ???
- 8010h get ??? record
- Return: DX:AX -> ??? record
- 8011h ???
- 8012h ???
- BX = ???
- Return: DX:AX = ???
- 8013h get ??? record
- Return: DX:AX -> ??? record
- 8014h ???
- ES:DI -> ???
- Return: nothing
- 8015h get ??? record
- Return: DX:AX -> 8-byte ??? record
- 8016h get ??? record
- Return: DX:AX -> 6-byte ??? record
- 8017h ???
- ES:DI -> ???
- Return: DX:AX = ???
- 8018h get ??? record
- Return: DX:AX -> ??? record
- 8019h get ??? record
- Return: DX:AX -> 14-byte ??? record
- 801Ah get ??? record
- Return: DX:AX -> ??? record (max 98 bytes)
- 801Bh get ??? record
- Return: DX:AX -> ??? record
- 801Ch ???
- Return: nothing
- 801Dh get ???
- Return: AL = ???
- 801Eh ???
- Return: AX = ???
- 801Fh uninstall
- Return: AX = status
- 0000h successful
- other interrupt which could not be released
- AX = other
- Return: AX:BX = ??? (0000h:0000h by default)
- Program: XFS is a shareware Network File System client by Robert Juhasz
- Range: INT 60 to INT 65, selected by scanning for two consecutive free
- vectors and hooking the first
- SeeAlso: INT 62"XFS"
- --------N-61---------------------------------
- INT 61 - FTP Software PC/TCP - TCP/IP TSR System Call interface
- AH = system call number (also see entries below)
- 01h "pkt_alloc" (v2.05; this is "net_config" in v2.1+)
- 02h "pkt_free" (v2.05; this is "get_kernel_info" in v2.1+)
- Return: CF clear if successful
- CF set on error
- AL = basic error (see #2568)
- AH = suberror number (see #2569,#2570)
- Range: INT 20h to INT E0h, selected by configuration
- Notes: the installation check consists of testing for the signature "TCPTSR"
- three bytes beyond the start of the interrupt handler
- BUG: the SLIP kernel for v2.05 bounds-checks the wrong register, so values
- greater than 54h in AH may crash the system. Other kernels may have
- this bug as well.
- SeeAlso: INT 61/AH=00h"PC/TCP",INT 61/AH=2Ah,INT 61/AH=54h
- Index: installation check;PC/TCP
-
- (Table 2568)
- Values for PC/TCP error code:
- 00h "NET_NOERR" successful
- 01h "NET_ERR_INUSE" protocol or socket already in use
- 02h "NET_DOS_ERR" MS-DOS error (returned as suberror code in AH)
- 03h "NET_ERR_NOMEM" out of memory
- 04h "NET_ERR_NOTNETCONN" not a network descriptor
- 05h "NET_ERR_ILLEGALOP" invalid operation on given kind of network descriptor
- 06h "NET_ERR_BADPKT" illegal or corrupted packet
- 07h "NET_ERR_NOHOST" no host bound to specified connection
- 08h "NET_ERR_CANTOPEN" unable to open file
- 09h "NET_ERR_NET_UNREACHABLE" network is unreachable
- 0Ah "NET_ERR_HOST_UNREACHABLE" host is unreachable (see #2569)
- 0Bh "NET_ERR_PROT_UNREACHABLE" protocol is unreachable
- 0Ch "NET_ERR_PORT_UNREACHABLE" port is unreachable
- 0Dh "NET_ERR_TIMEOUT" operation timed out
- 0Eh "NET_ERR_HOSTUNKNOWN" unable to resolve host name
- 0Fh "NET_ERR_NOSERVERS" no name servers configured
- 10h "NET_ERR_SERVER_ERR" bad reply from name server
- Subcodes: 0= no error, 1 = Host unreachable
- 11h "NET_ERR_BADFORMAT" bad format for IP address or field in IP address
- structure is zero
- 12h "NET_ERR_BADARG" invalid argument
- 13h "NET_ERR_EOF" foreign host closed its end of connection
- 14h "NET_ERR_RESET" connection has been reset
- 15h "NET_ERR_WOULDBLOCK" recv() call was done on a non-blocking connection
- with no data available
- 16h "NET_ERR_UNBOUND" insufficient resources to do operation
- 17h "NET_ERR_NODESC" could not allocate network descriptor
- 18h "NET_ERR_BADSYSCALL" invalid/unsupported kernel call
- 19h "NET_ERR_CANTBROADCAST" unable to broadcast
- 1Ah "NET_ERR_NOTESTAB" operation illegal because connection not established
- 1Bh kernel busy, try again later
- 1Ch "NET_ERR_ICMPMESG" an ICMP message was received (not on streams)
- (see #2570)
- ---v2.1+---
- 1Dh "NET_ERR_TERMINATING" internal kernel fatal error
- 1Eh "NET_ERR_TAG_LOCKED" not allowed to set this tag (net_config)
- 1Fh "NET_ERR_BAD_INTERFACE" non existent interface specified
- 20h "NET_ERR_BADCONFIG" kernel cannot run - bad configuration
- 21h "NET_ERR_EMM" expanded memory error
- 22h "NET_ERR_CANT_SHUTDOWN" cant unload kernel (multitasker running)
- 23h "NET_ERR_PARKED_IN" unable to unhook DOS interrupt
- 24h "NET_ERR_NOQIOS" ran out of resources; try again later
- 25h "NET_ERR_WOULD_TRUNCATE" datagram too large and "don't truncate" was set
-
- (Table 2569)
- Values for subcodes of PC/TCP error 0Ah "NET_ERR_HOST_UNREACHABLE":
- 00h no error
- 01h host unreachable
- 02h ARP failed
- 03h hardware failure
- 04h link failure
- 05h no route
- 06h gateway down
- SeeAlso: #2568,#2570
-
- (Table 2570)
- Values for subcodes of PC/TCP error 1Ch "NET_ERR_ICMPMESG":
- 07h unrecognised
- 08h can't fragment
- 09h srcr_fail
- 0Ah source quench
- 0Bh time exceeded
- 0Ch parameter problem
- 0Dh admin_prohib. see also code 0Ah
- SeeAlso: #2568,#2569
- --------N-6100-------------------------------
- INT 61 U - PC/TCP kernel v2.05+ - GET DEBUG INFORMATION
- AH = 00h
- DS:SI -> 216-byte buffer for network debugging information (see #2571)
- Return: CF clear
- AX = 0000h
- buffer filled
- Notes: this call is not documented by FTP, Inc. for any version
- most of the information returned by this call is available via the
- documented get_kernel_info or net_info commands.
- this function is not supported by Beame&Whiteside's BWPCTCP v3.0a shim
- SeeAlso: INT 61"FTP Software",INT 61/AH=2Ah"PC/TCP"
-
- Format of network debugging information:
- Offset Size Description (Table 2571)
- 00h DWORD number of interrupts
- 04h DWORD receive buffer low-water mark
- 08h DWORD transmit buffer low-water mark
- 0Ch DWORD number of packets received
- 10h DWORD number of packets transmitted
- 14h DWORD total receive errors
- 18h DWORD total transmit errors
- 1Ch 4 BYTEs ???
- 20h DWORD receive resets
- 24h DWORD transmit resets
- 28h DWORD number of "runts" received
- 2Ch DWORD number of alignment errors on received packets
- 30h DWORD number of CRC errors on received packets
- 34h DWORD number of parity errors on received packets
- 38h DWORD number of receive overflow errors
- 3Ch DWORD number of oversized packets received
- 40h DWORD number of packets lost due to lack of buffers
- 44h DWORD receive timeouts
- 48h 32 BYTEs ???
- 68h DWORD number of transmit collisions
- 6Ch DWORD number of transmit timeouts
- 70h DWORD number of transmit underflows
- 74h DWORD number of lost "crs" on transmit
- 78h DWORD number of times heartbeat failed on transmit
- 7Ch 24 BYTEs ???
- 94h WORD free packet buffers
- 96h WORD total packet buffers
- 98h WORD minimum number of packet buffers free since kernel started
- 9Ah 24 BYTEs ???
- B2h DWORD pointer to TCP connection list???
- B6h DWORD pointer to IP routing table???
- BAh 30 BYTEs ???
- --------N-6100-------------------------------
- INT 61 - Banyan VINES - CALL A SERVICE
- AH = 00h
- AL = service ID (1..16)
- other registers vary by service
- Return: AX = status (see #2574)
- Desc: Calls an adapter driver or redirector service. The service handler
- pointers are stored at offset 0010h in the code segment of the
- BANV interrupt handler (see #2572).
- Note: Banyan can use any interrupt from 60h through 66h. The Banyan
- interrupt handler is identified by the string "BANV" in the four
- bytes immediately preceding the interrupt handler
- SeeAlso: AH=01h,AH=03h
-
- Format of the BANV code segment (revision 5.53):
- Offset Size Description (Table 2572)
- 00h 16 BYTEs reserved
- 10h 16 DWORDs far pointers to the service handlers (0 = not installed)
- 50h DWORD far pointer to last called service
- 54h WORD VINES revision
- 56h DWORD VINES revision long
- 5Ah WORD VINES revision (lower bound)
- 5Ch DWORD VINES revision (lower bound) long
- 60h WORD VINES revision (upper bound)
- 62h DWORD VINES revision (upper bound) long
- 66h WORD end of PCCONFIG area
- 68h WORD start of PCCONFIG area
- 6Ah 4 BYTEs BANV interrupt identifier ("BANV")
- 6Eh N BYTEs BANV interrupt service
- SeeAlso: #2573
- --------b-6100-------------------------------
- INT 61 - Atari Portfolio - SERVICE INITIALIZATION
- AH = 00h
- Return: nothing
- Note: applications using any Portfolio INT 61 calls should call this function
- exactly once at startup
- SeeAlso: AH=07h"Portfolio",AH=09h"Portfolio",AH=0Dh"Portfolio"
- SeeAlso: AH=11h"Portfolio",AH=15h"Portfolio",AH=19h"Portfolio"
- SeeAlso: AH=1Bh"Portfolio",AH=24h"Portfolio",AH=2Ch"Portfolio"
- SeeAlso: AH=30h"Portfolio"
- --------V-610000-----------------------------
- INT 61 - OPTIMA 1024 VGA-Sync,ET-3000 chipset - ZOOM DISPLAY
- AX = 0000h
- BX = zoom factor (0-7)
- Desc: zooms the display based on the given zoom factor
- Notes: INT 61h is the default interrupt; the actual interrupt number can be
- obtained by calling INT 16/AH=FFh
- not all vendors include the Tseng TSR which supports these functions
- SeeAlso: AX=0001h"OPTIMA",AX=0002h"OPTIMA",AX=0005h"OPTIMA"
- SeeAlso: INT 16/AH=FFh"OPTIMA"
- --------N-610001DS0001-----------------------
- INT 61 - Banyan VINES - INTERNAL VINES SOCKET API (NEAR DATA)
- AX = 0001h
- DS = 0001h (to distinguish from alternate AX=0001h socket interface)
- CX:BX -> internal communications control block (see #2573)
- DX = caller's data segment
- Return: AX = status
- 0000h successful
- 0099h invalid operation
- 00A5h resource not available
- Desc: StreetTalk access with session handles
- Range: INT 60 to INT 66
- Notes: This service is handled by the adapter driver
- The request dispatch table contains dummy entries for subfunctions
- 06h, 0Dh, 0Eh, 0Fh, 10h, and 11h, which always return error 0099h
- (invalid operation) in the request block's result buffer
- in recent VINES releases, this interface is superseded by the AX=000Fh
- interface, which allows FAR parameter block pointers (refer to that
- function's entries for more details on individual subfunctions)
- some adapter drivers (e.g. the NDIS2 token ring driver NDTOKBAN for
- VINES 5.53) ignore the value in CX and use the value from DX instead
- SeeAlso: AX=000Fh
-
- Format of internal communications control block:
- Offset Size Description (Table 2573)
- 00h WORD subfunction number
- 02h WORD magic number (FEFEh)
- 04h WORD (ret) result, should be set to 0 before calling
- 06h WORD reserved (will be set to client DS)
- 08h WORD caller's code segment if function 000Bh, 0 else
- 0Ah WORD pointer to parameter block
- 0Ch WORD reserved (segment of parameter block; will be set to client DS)
- 0Eh WORD StreetTalk handle
- SeeAlso: #2572,#2693 at INT 61/AX=000Fh
- --------N-610001SF0001-----------------------
- INT 61 - Banyan VINES - "Sosock" - OPEN COMMUNICATIONS SOCKET
- AX = 0001h subfn 0001h
- DS:DX -> communications control block (function 0001h) (see #2575)
- Return: AX = status (0000h-0002h,0098h,009Eh-00A2h) (see #2574)
- Range: INT 60h to INT 66h
- Note: The Banyan interrupt handler is identified by the string "BANV" in
- the four bytes immediately preceding the interrupt handler
- SeeAlso: AX=0001h/SF=0002h,AX=0001h/SF=0008h,INT 15/AX=DE2Eh
-
- (Table 2574)
- Values for VINES status:
- 0000h successful
- 0001h service not installed
- 0002h invalid service ID
- 0003h invalid function
- 0004h-000Ah reserved for BANV interface errors
- 0097h invalid socket identifier
- 0098h resource already in use
- 009Bh destination node unreachable
- 009Ch message overflow
- 009Dh destination socket nonexistent
- 009Eh address family does not exist
- 009Fh socket type does not exist
- 00A0h protocol does not exist
- 00A1h no more sockets available
- 00A2h no more buffer space available
- 00A3h timeout
- 00A5h resource not available
- 00A6h internal communication failure
- 00B1h resource disconnect
-
- Format of VINES control block to open socket:
- Offset Size Description (Table 2575)
- 00h WORD 0001h
- 02h WORD pointer to argument block
- 04h WORD error return code
- 06h 4 BYTEs reserved
- SeeAlso: #2576
-
- Format of VINES argument block for opening socket:
- Offset Size Description (Table 2576)
- 00h WORD pointer to 2-byte buffer for socket identifier
- 02h WORD address family
- 0003h Banyan
- 04h WORD socket type
- in address family 0003h
- 0001h IPC socket
- 0002h SPP socket
- 06h WORD protocol number
- FFFFh default
- 08h WORD pointer to 16-byte buffer for socket address (see #2577)
- 0Ah WORD local port number
- 0000h if service should assign transient port number
- 0001h to 01FFh well-known port number (assigned by Banyan)
- SeeAlso: #2575
-
- Format of Banyan VINES IPC port:
- Offset Size Description (Table 2577)
- 00h WORD address family (always 0003h for Banyan ports)
- 04h 4 BYTEs network number (server's serial number)
- 06h WORD subnet number (0001h = server, 8000h-FFFEh = PC)
- 08h WORD port ID (0001h-01FFh for "well-known" ports)
- 0Ah BYTE hop count
- 0Bh 5 BYTEs filler
- SeeAlso: #2582
- --------N-610001SF0002-----------------------
- INT 61 - Banyan VINES - "Sosend" - INITIATE OUTPUT EVENT
- AX = 0001h subfn 0002h
- DS:DX -> communications control block (function 0002h) (see #2578)
- Return: AX = status (0000h-0002h,0097h,009Bh-009Dh,00A2h,00A3h,00B1h)
- (see #2574)
- Range: INT 60h to INT 66h
- Note: The Banyan interrupt handler is identified by the string "BANV" in
- the four bytes immediately preceding the interrupt handler
- SeeAlso: AX=0001h/SF=0001h,AX=0001h/SF=0005h
-
- Format of VINES control block for subfunction 0002h:
- Offset Size Description (Table 2578)
- 00h WORD 0002h
- 02h WORD pointer to argument block (see #2579)
- 04h WORD error return code (0000h,0097h,00A2h,00A3h,00A5h,00A6h,00B1h)
- (see #2574)
- 06h 4 BYTEs reserved
- SeeAlso: #2583
-
- Format of VINES argument block for subfunction 0002h:
- Offset Size Description (Table 2579)
- 00h WORD routine metric
- 02h WORD error return code
- 04h WORD socket identifier
- 06h WORD pointer to send buffer (see #2581)
- 08h WORD length of send buffer
- 0Ah WORD message request flags (see #2580)
- 0Ch 16 BYTEs socket address (see #2582)
- 1Ch WORD timeout value in multiples of 200ms
- 1Eh WORD connection identifier
- 20h WORD type of request
- 0001h send message
- 0002h establish a virtual connection
- 0003h terminate a virtual connection
- SeeAlso: #2578,#2584
-
- Bitfields for message request flags:
- Bit(s) Description (Table 2580)
- 0 async request
- 1 reliable message
- 2 flush receive buffer on overflow
- 3 end of user message received
- 4 vectored request (if set, send buffer contains buffer descriptors)
- 5 connection-specific receive
- 6 change to connection-specific receive mode
- SeeAlso: #2579,#2584
-
- Format of buffer descriptor:
- Offset Size Description (Table 2581)
- 00h WORD data segment
- 02h WORD buffer pointer
- 04h WORD buffer length
- 06h WORD character count
- SeeAlso: #2579
-
- Format of VINES socket address for unreliable datagrams:
- Offset Size Description (Table 2582)
- 00h WORD 0003h address family
- 02h DWORD FFFFFFFFh network number
- 06h WORD FFFFh subnet number
- 08h WORD local port number
- 0Ah BYTE 00h-0Fh hop count
- 0Bh 5 BYTEs 0000h filler
- SeeAlso: #2577
- --------N-610001SF0003-----------------------
- INT 61 - Banyan VINES - "Sorec" - RECEIVE INPUT EVENT NOTIFICATION
- AX = 0001h subfn 0003h
- DS:DX -> communications control block (function 0003h) (see #2583)
- Return: AX = status (00-0Ah,97h,A2h,A3h) (see #2574)
- Range: INT 60h to INT 66h
- Note: The Banyan interrupt handler is identified by the string "BANV" in
- the four bytes immediately preceding the interrupt handler
- SeeAlso: AX=0001h/SF=0002h
-
- Format of VINES control block for subfunction 0003h:
- Offset Size Description (Table 2583)
- 00h WORD 0003h
- 02h WORD pointer to argument block (see #2584)
- 04h WORD error return code (0000h,0097h,00A2h,00A3h,00A5h,00A6h,00B1h)
- (see #2574)
- 06h 4 BYTEs reserved
- SeeAlso: #2578,#2584,#2586
-
- Format of VINES argument block for subfunction 0003h:
- Offset Size Description (Table 2584)
- 00h WORD character count
- 02h WORD error return code
- 04h WORD socket identifier
- 06h WORD pointer to receive buffer (see #2585)
- 08h WORD length of receive buffer
- 0Ah WORD message request flags (see #2580)
- 0Ch 16 BYTEs socket address (see #2577)
- 1Ch WORD timeout value in multiples of 200ms
- 1Eh WORD connection identifier
- 20h WORD type of response
- 0001h message received
- 0002h virtual connection established
- 0003h virtual connection terminated
- SeeAlso: #2583,#2587
-
- Format of buffer descriptor:
- Offset Size Description (Table 2585)
- 00h WORD data segment
- 02h WORD buffer pointer
- 04h WORD buffer length
- 06h WORD character count
- SeeAlso: #2584
- --------N-610001SF0004-----------------------
- INT 61 - Banyan VINES - "Soclose" - CLOSE A SOCKET
- AX = 0001h subfn 0004h
- DS:DX -> communications control block (function 0004h) (see #2586)
- Return: AX = status (0000h-000Ah,0097h) (see #2574)
- Range: INT 60h to INT 66h
- Note: The Banyan interrupt handler is identified by the string "BANV" in
- the four bytes immediately preceding the interrupt handler
- SeeAlso: AX=0001h/SF=0001h,INT 15/AX=DE2Eh
-
- Format of VINES control block to close socket:
- Offset Size Description (Table 2586)
- 00h WORD 0004h
- 02h WORD pointer to argument block (see #2587)
- 04h WORD error return code (see #2574)
- 06h 4 BYTEs reserved
- SeeAlso: #2583,#2589
-
- Format of VINES argument block for closing socket:
- Offset Size Description (Table 2587)
- 00h WORD socket identifier
- SeeAlso: #2584,#2586,#2590
- --------N-610001SF0005-----------------------
- INT 61 - Banyan VINES - "Sowait" - WAIT FOR ASYNCHRONOUS EVENT COMPLETION
- AX = 0001h subfn 0005h
- DS:DX -> communications control block (see #2589)
- Return: AX = status (0000h-000Ah,00A2h,00A3h) (see #2588)
- Desc: returns results for all asynchronous operations invoked from the
- data segment used for this call
- Range: INT 60h to INT 66h
- Notes: The Banyan interrupt handler is identified by the string "BANV" in
- the four bytes immediately preceding the interrupt handler
- SeeAlso: AX=0001h/SF=0002h,AX=0001h/SF=0009h
-
- (Table 2588)
- Values for VINES function status:
- 0000h successful
- 0001h service not installed
- 0002h invalid service ID
- 0003h-000Ah reserved for BANV interface errors
- 00A2h no more buffer space available
- 00A3h timeout event
-
- Format of VINES control block for subfunction 0005h:
- Offset Size Description (Table 2589)
- 00h WORD 0005h
- 02h WORD pointer to argument block (see #2590)
- 04h WORD error return code
- 06h 4 BYTEs reserved
- SeeAlso: #2586,#2591
-
- Format of VINES argument block for subfunction 0005h:
- Offset Size Description (Table 2590)
- 00h WORD pointer to WORD event pointer
- 02h WORD timeout in multiples of 200ms, FFFFh = infinite
- SeeAlso: #2587,#2589
- --------N-610001SF0008-----------------------
- INT 61 - Banyan VINES - "Sosession" - REGISTER APPLICATION WITH COMM SERVICE
- AX = 0001h subfn 0008h
- DS:DX -> communications control block (function 0008h) (see #2591)
- Return: AX = status
- 0000h successful
- 00A2h no more buffer space available
- Range: INT 60h to INT 66h
- Note: The Banyan interrupt handler is identified by the string "BANV" in
- the four bytes immediately preceding the interrupt handler
- SeeAlso: AX=0001h/SF=0001h,AX=0001h/SF=0009h
-
- Format of VINES control block for subfunction 0006h:
- Offset Size Description (Table 2591)
- 00h WORD 0008h
- 02h WORD process type
- 0001h transient process
- 0002h resident process
- 04h WORD error return code
- 06h 4 BYTEs reserved
- SeeAlso: #2589,#2592
- --------N-610001SF000B-----------------------
- INT 61 - Banyan VINES - "Soint" - SET USER COMPLETION FUNCTION
- AX = 0001h subfn 000Bh
- DS:DX -> communications control block (function 000Bh) (see #2592)
- Return: AX = status (00h-0Ah,A2h) (see #2588)
- Range: INT 60h to INT 66h
- Note: The Banyan interrupt handler is identified by the string "BANV" in
- the four bytes immediately preceding the interrupt handler
- SeeAlso: AX=0001h/SF=0005h,AX=0001h/SF=0008h
-
- Format of VINES control block for subfunction 000Bh:
- Offset Size Description (Table 2592)
- 00h WORD 000Bh
- 02h WORD pointer to argument block (see #2593)
- 04h WORD error return code (see #2574)
- 06h 2 BYTEs reserved
- 08h WORD user CS register
- SeeAlso: #2591
-
- Format of VINES argument block for subfunction 000Bh:
- Offset Size Description (Table 2593)
- 00h WORD pointer to user interrupt function (see #2594)
- 02h WORD pointer to user stack
- 04h WORD initial timeout value in multiples of 200ms, FFFFh = infinite
- SeeAlso: #2593
-
- (Table 2594)
- Values FAR user function is invoked with:
- SS = DS = ES = segment of control block
- STACK: DWORD return address
- WORD argument pointer (sosend or sorec argument block)
- WORD error return code
- 0000h argument pointer is valid
- 00A3h timeout
- --------V-610001-----------------------------
- INT 61 - OPTIMA 1024 VGA-Sync,ET-3000 chipset - CENTER ZOOM WINDOW
- AX = 0001h
- BX = X coordinate to center
- CX = Y coordinate to center
- Desc: Positions the zoom window such that the specified window-relative
- coordinates appear as close as possible to the center of the
- display. Useful for scrolling and panning.
- Range: unknown
- Notes: INT 61h is the default interrupt; the actual interrupt number can be
- obtained by calling INT 16/AH=FFh
- not all vendors include the Tseng TSR which supports these functions
- SeeAlso: AX=0000h"OPTIMA",AX=0002h"OPTIMA",AX=0005h"OPTIMA"
- SeeAlso: INT 16/AH=FFh"OPTIMA"
- --------I-610002-----------------------------
- INT 61 - Banyan VINES - 3270 INTERFACE
- AX = 0002h
- BH = function number (see #2595)
- DS:CX -> argument block (except BH=00h,1Ah) (see #2597)
- Return: AX = status (see #2596)
- Notes: Either 3270/SNA or 3270/BSC interface may use AX=0002h, depending on
- which is loaded first. The other interface will use AX=000Ah
- Status codes greater than 63h indicate an inconsistency in the 3270/SNA
- or 3270/BSC resident driver, which must be reloaded by the user
-
- (Table 2595)
- Values for VINES 3270 interface function number:
- 00h "pi2reset" reset 3270/SNA or 3270/BSC driver
- 02h "pi2bsc" (3270/BSC only)
- 03h "pi2get" get information stored in 3270 resident driver
- 04h "pi2put" store information in 3270 resident driver
- 05h "pi2gcur" get current screen position
- 07h "pi2sdat" send data keystroke
- 08h "pi2scom" send command keystroke
- 0Ah "pi2field" get field info for arbitrary screen positions
- 0Fh "pi2stat" get logical unit/device status
- 12h "pi2nlus" determine logical unit/device assignment
- 13h "pi2gate" specifies comm port address to gateway service
- 14h "pi2attach" attach a logical unit/device
- 15h "pi2sdev" save logical unit/device info in resident driver
- (not supported in >3.0)
- 16h "pi2gdev" get device information (not supported in >3.0)
- 17h "pi2luinfo" get info about specific logical unit/device
- 18h "pi2gerr" get finer error detail
- 19h "pi2dhold" (3270/SNA only) holds a 3270 device
- 1Ah "pi2shut" release memory-resident module
- 1Ch "pi2sprof" save profile info in res driver (not supp in >3.0)
- 1Dh "pi2gprof" get prevsly stored profile info (not supp in >3.0)
-
- (Table 2596)
- Values for VINES 3270 status:
- 0000h successful
- 000Bh invalid parameter or data does not fit data area
- 000Ch another code path currently active in resident driver
- 000Dh operation currently not allowed
- 0032h encountered connection disconnect error
- 0033h encountered "sosend" completion error
- 0034h encountered "sosend" communication error
- 0035h attach request refused. extended error info via "pi2gerr":
- 01h resource unavailable
- 02h invalid type
- 03h version mismatch
- 04h invalid logical unit number
- 05h error during ARL processing
- 06h no access for user
- 0071h encountered "sosock" error
- 0072h encountered unrecognizable error
- 0073h encountered "sowait" error (extended info via "pi2gerr")
- 0074h encountered invalid type-of-request on "sowait"
- 0075h encountered "sorec" error (extended info via "pi2gerr")
- 0076h encountered "sorec" completion error (ext info via "pi2gerr")
- 0077h encountered connection request
- 0078h encountered unrecognizable data
- 0079h encountered unknown connection ID (ext info via "pi2gerr")
- SeeAlso: #2574
-
- Format of argument block for BH=03h,04h:
- Offset Size Description (Table 2597)
- 00h WORD size of data area (max 256)
- 02h N BYTEs data area
- SeeAlso: #2598,#2599,#2600
-
- Format of argument block for BH=05h:
- Offset Size Description (Table 2598)
- 00h WORD logical unit/device number
- 02h WORD pointer to WORD buffer for cursor index
- 04h WORD pointer to BYTE buffer for current field attribute
- SeeAlso: #2597,#2599,#2600
-
- Format of argument block for BH=07h:
- Offset Size Description (Table 2599)
- 00h WORD logical unit/device number
- 02h WORD ASCII data byte
- 04h WORD pointer to WORD count of characters which will need updating
- SeeAlso: #2597,#2598,#2600
-
- Format of argument block for BH=08h:
- Offset Size Description (Table 2600)
- 00h WORD logical unit/device number
- 02h WORD 3270 keystroke (see #2601)
- SeeAlso: #2597,#2598,#2599,#2602
-
- (Table 2601)
- Values for 3270 keystroke:
- 0000h Enter
- 0001h Clear
- 0002h PA1
- 0003h PA2
- 0004h PA3
- 0005h PF1
- ...
- 001Ch PF24
- 001Dh CSELECT (cursor select)
- 001Eh Insert
- 001Fh Delete
- 0020h EOField
- 0021h EINPUT (erase input)
- 0022h Reset
- 0023h Attention
- 0024h SysReq
- 0025h Duplicate
- 0026h Fieldmark
- 0027h Home
- 0028h NextLine
- 0029h Tab
- 002Ah BackTab
- 002Bh cursor up
- 002Ch cursor down
- 002Dh cursor right
- 002Eh cursor left
- 002Fh double cursor right
- 0030h double cursor left
- 0031h PRINT
- 0032h CANCEL
- 0033h Backspace
-
- Format of argument block for BH=0Ah:
- Offset Size Description (Table 2602)
- 00h WORD logical unit/device number
- 02h WORD screen index
- 04h WORD pointer to WORD buffer for field length
- 06h WORD pointer to WORD buffer for offset in screen of field start
- SeeAlso: #2600,#2603
-
- Format of argument block for BH=0Fh:
- Offset Size Description (Table 2603)
- 00h WORD logical unit/device number
- 02h WORD clear mask (clear these bits of status after returning status)
- 04h WORD pointer to WORD buffer for device status (see #2604)
- SeeAlso: #2602,#2605
-
- Bitfields for Banyan 3270 device status:
- Bit(s) Description (Table 2604)
- 10 status modified
- 9 buffer modified
- 8 set cursor
- 5 sound alarm
- 1-0 size of print line for printer logical units
- 00 unformatted line
- 01 40-character line
- 10 64-character line
- 11 80-character line
-
- Format of argument block for BH=12h:
- Offset Size Description (Table 2605)
- 00h WORD pointer to WORD buffer for number of logical units or devices
- 02h WORD pointer to WORD buffer for version number
- 04h WORD pointer to 64-byte buffer for logical unit/device list
- SeeAlso: #2603,#2606
-
- Format of argument block for BH=13h:
- Offset Size Description (Table 2606)
- 00h 16 BYTEs communications port address (see #2577)
- SeeAlso: #2605,#2607
-
- Format of argument block for BH=14h:
- Offset Size Description (Table 2607)
- 00h WORD logical unit/device number
- 0000h attach any free device of the specified type
- 02h WORD logical unit/device type
- (3270/SNA) 01h, 02h, or 03h
- (3270/BSC) 02h display
- (3270/BSC) 03h printer
- 04h WORD pointer to WORD buffer for attached logical unit/device number
- SeeAlso: #2606,#2608
-
- Format of argument block for BH=16h:
- Offset Size Description (Table 2608)
- 00h WORD pointer to 18-byte buffer for device block (see #2613)
- first WORD must be set to desired logical unit/device number
- SeeAlso: #2607,#2609
-
- Format of argument block for BH=17h:
- Offset Size Description (Table 2609)
- 00h WORD logical unit/device number
- 02h WORD pointer to information block in caller's DS (see #2614)
- SeeAlso: #2608,#2610
-
- Format of argument block for BH=18h:
- Offset Size Description (Table 2610)
- 00h WORD pointer to WORD buffer for major error code
- 02h WORD pointer to WORD buffer for minor error code
- SeeAlso: #2609,#2611
-
- Format of argument block for BH=19h:
- Offset Size Description (Table 2611)
- 00h WORD logical unit/device number
- SeeAlso: #2610,#2612
-
- Format of argument block for BH=1Ch,1Dh:
- Offset Size Description (Table 2612)
- 00h WORD pointer to profile block in caller's DS (see #2617)
- SeeAlso: #2597,#2611
-
- Format of device block, argument block for BH=15h:
- Offset Size Description (Table 2613)
- 00h WORD logical unit/device number
- 02h WORD logical unit/device type
- 04h WORD display model number
- 06h WORD numeric checking
- 08h WORD status line
- 0Ah BYTE unprotected normal field attribute
- 0Bh BYTE unprotected intensified field attribute
- 0Ch BYTE protected normal field attribute
- 0Dh BYTE protected intensified field attribute
- 0Eh WORD reserved
- 10h WORD printer port number
-
- Format of information block:
- Offset Size Description (Table 2614)
- 00h WORD device model number
- 02h DWORD screen buffer pointer
- 06h DWORD status line pointer (see #2615)
- 0Ah DWORD reserved
-
- Format of Banyan VINES 3270 status line:
- Offset Size Description (Table 2615)
- 00h BYTE comm line status
- 00h inactive
- 01h active
- 01h BYTE activation level
- 01h physical unit activated
- 02h logical unit also activated
- 03h session is bound
- 02h BYTE data traffic state
- 00h inactive
- 01h active
- 03h BYTE screen ownership
- 00h SLU->PLU session owns screen
- 01h SLU->SSCP session owns screen
- 04h BYTE keyboard status (see #2616)
- 05h BYTE insert mode
- 01h if in insert mode
- 06h BYTE numeric
- 01h if current screen buffer is numeric only
- 07h BYTE printer status
- 00h printer not assigned
- 01h printer is inactive
- 02h printer error
- 03h currently printing
- 04h printer is busy
- 05h printer is very busy
- 08h BYTE printer assignment
- 09h BYTE maximum size of network name
- 0Ah N BYTEs ASCIZ network name
- BYTE maximum size of message window
- M BYTEs null-terminated message window
- BYTE code set
- 00h EBCDIC
- 01h ASCII
- M BYTEs extended attributes
- 01h extended attributes are in effect (stored at screen+1920)
- each extended attribute specifies
- bits 0,1: 00=normal, 01=blink, 10=reverse, 11=underscor
- bits 2-4: 000=default,001=blue,010=red,011=pink,
- 100=green,101=turquoise,110=yellow,111=white
- BYTE extended color
- 01h other than base color is in effect
-
- (Table 2616)
- Values for Banyan VINES 3270 keyboard status:
- 00h UNLOCK - ready to accept data
- 01h TIME - aid was struck
- 02h SYSTEM - received response no restore
- 03h FUNCTION - unavailable keyboard function
- 04h INPUT - not currently used
- 05h ENDFIELD - field filled in insert mode
- 06h PROTECTED - attempt to enter in protected field
- 07h NUMERIC - attempt to enter in numeric field
- 08h PROGRAM - error in outbound data stream
-
- Format of Banyan VINES 3270 profile block:
- Offset Size Description (Table 2617)
- 00h 64 BYTEs gateway service name
- 40h 16 BYTEs gateway comm port address
- 50h WORD primary logical unit number
- 52h WORD secondary logical unit type
- 54h WORD secondary logical unit number
- 56h WORD printer assignment
- 58h 50 BYTEs keyboard definitions filename
- --------V-610002-----------------------------
- INT 61 - OPTIMA 1024 VGA-Sync,ET-3000 chipset - END ZOOM
- AX = 0002h
- Desc: switches off zoom and returns window to its original state
- Range: unknown
- Notes: INT 61h is the default interrupt; the actual interrupt number can be
- obtained by calling INT 16/AH=FFh
- not all vendors include the Tseng TSR which supports these functions
- SeeAlso: AX=0000h"OPTIMA",INT 16/AH=FFh"OPTIMA"
- --------N-610003SF00-------------------------
- INT 61 - Banyan VINES - ASYNC TERMINAL EMULATION - INIT USER BUFFER PTR INFO
- AX = 0003h subfn 00h
- DS:BX -> argument block (see #2619)
- Return: AX = status (see #2618)
- SeeAlso: AX=0003h/SF=06h,AX=0003h/SF=08h,AX=0003h/SF=0Dh
-
- (Table 2618)
- Values for VINES function status:
- 0000h successful
- 000Bh invalid session ID
- 000Ch session not active
- 000Dh invalid request type
- 000Eh invalid parameters
- 000Fh out of heap space
- 0010h timeout on send
- 0011h Banyan communications error
- 0012h session not waiting for host
- 0013h session is active
- 0014h duplicate suspend session request
- 0015h no session suspended
- 0016h ring data buffer full
- 0017h printer error encountered
- 0018h Banyan communications error
- 0019h unable to make connection
- 001Ah no ring buffer specified at startup
- 001Bh service is down
- 001Ch invalid service name
- 001Dh service is closed
- 001Eh invalid connection name
- 001Fh max session limit reached for service
- 0020h access rights list for connection/dialout does not include this user
- 0021h service not responding
- 0022h missing telephone number
- SeeAlso: #2574,#2622
-
- Format of VINES argument block:
- Offset Size Description (Table 2619)
- 00h BYTE session ID (00h)
- 01h BYTE 00h (func "initialize user buffer pointer information area")
- 02h WORD -> user buffer ptr info area in caller's current DS (see #2620)
-
- Format of user buffer ptr info area:
- Offset Size Description (Table 2620)
- 00h WORD flags
- 0000h don't read interface's data buffer
- 0001h read data buffer
- 02h DWORD pointer to ring buffer
- 06h WORD length of ring buffer
- 08h WORD ring buffer offset to last byte read by caller
- 0Ah DWORD pointer to WORD containing offset of last byte
- in ring buffer filled
- 0Eh DWORD pointer to screen buffer
- 12h DWORD pointer to field containing cursor position
- 16h DWORD pointer to terminal status area (see #2621)
-
- Format of VINES terminal status area:
- Offset Size Description (Table 2621)
- 00h BYTE status of session: 4Eh=oNline, 46h=oFfline, 57h=Waiting
- 01h BYTE terminal type (00h=VT100, 01h=TTY, 02h=VT52, 03h=IBM3101)
- 02h BYTE current keypad mode (VT100,VT52 only)
- 4Eh ("N") numeric mode
- 41h ("A") application mode
- 03h 4 BYTEs current state of LEDs (VT100 only)
- 00h off
- 01h on
- 07h WORD line error count
- 09h WORD primary error code (see #2622)
- 0Bh WORD secondary error code
-
- (Table 2622)
- Values for VINES primary error code:
- 0000h no error
- 0001h unable to make connection
- 0002h communications error, restart session
- 0003h async terminal emulation service unavailable
- 0004h lost carrier
- 0005h all matching lines busy
- 0006h no lines defined for connection name
- 0007h no dial lines available on server
- 0008h no matching dial lines available
- 0009h out of heap space
- 000Ah service error encountered
- 000Bh timed out waiting to connect
- 000Ch communications error
- 000Dh communications error
- 000Eh host wants file transferred to/from PC
- 000Fh host software changed session parameter
- 0010h host software changed tap settings
- 0011h host software changed LED indicator
- 0012h host software changed display background (secondary error code 00h for
- white on black, 01h for black on white)
- 0013h host software changed display option (secondary error code 00h for off,
- 01h for on)
- 0014h communications error
- 0015h communications error
- 0016h unable to make connection
- 0017h unable to make connection
- SeeAlso: #2618
- --------N-610003SF01-------------------------
- INT 61 - Banyan VINES - ASYNC TERMINAL EMULATION - SEND TO HOST
- AX = 0003h subfn 01h
- DS:BX -> argument block (see #2623)
- Return: AX = status (see #2618)
- SeeAlso: AX=0003h/SF=00h,AX=0003h/SF=02h,AX=0003h/SF=14h
-
- Format of VINES argument block for Function 0003h subfunction 01h:
- Offset Size Description (Table 2623)
- 00h BYTE session ID (00h)
- 01h BYTE 01h (function "send to host")
- 02h BYTE type
- 00h ASCII byte
- 01h ASCII string
- 02h terminal function code
- 03h up arrow
- 04h down arrow
- 05h left arrow
- 06h right arrow
- 07h break
- 03h N BYTEs type-specific info (see #2624)
-
- Format of type-specific info:
- Offset Size Description (Table 2624)
- ---ASCII byte---
- 03h BYTE byte to send to host
- ---ASCII string---
- 03h WORD length of string
- 05h WORD pointer to string
- ---terminal function code (VT52/VT100)---
- 03h BYTE function code
- 00h keypad 0
- 01h keypad 1
- ...
- 09h keypad 9
- 0Ah keypad -
- 0Bh keypad ,
- 0Ch keypad .
- 0Dh keypad ENTER
- 0Eh PF1
- 0Fh PF2
- 10h PF3
- 11h PF4
- ---terminal function code (IBM3101)---
- 03h BYTE function code
- 00h PF1
- ...
- 07h PF8
- 08h Home
- SeeAlso: #2623
- --------N-610003SF02-------------------------
- INT 61 - Banyan VINES - ASYNC TERMINAL EMULATION - "CONTROL MONITOR"
- AX = 0003h subfn 02h
- DS:BX -> argument block (see #2625)
- Return: AX = status (see #2618)
- SeeAlso: AX=0003h/SF=03h,AX=0003h/SF=05h
-
- Format of VINES argument block for Function 0003h subfunction 02h:
- Offset Size Description (Table 2625)
- 00h BYTE session ID (00h)
- 01h BYTE 02h (function "control monitor")
- 02h BYTE display flag
- 00h don't display data received from host
- 01h display data
- --------N-610003SF03-------------------------
- INT 61 - Banyan VINES - ASYNC TERMINAL EMULATION - "FLOW CONTROL DATA"
- AX = 0003h subfn 03h
- DS:BX -> argument block (see #2626)
- Return: AX = status (see #2618)
- Desc: this function permits the caller to freeze/unfreeze the display and
- the ring buffer
- SeeAlso: AX=0003h/SF=02h,AX=0003h/SF=06h
-
- Format of VINES argument block for Function 0003h subfunction 03h:
- Offset Size Description (Table 2626)
- 00h BYTE session ID (00h)
- 01h BYTE 03h (function "flow control data")
- 02h BYTE flow control flag
- 00h allow characters to be put into display or ring buffer
- 01h don't place any more characters into display or ring buffer
- --------N-610003SF04-------------------------
- INT 61 - Banyan VINES - ASYNC TERMINAL EMULATION - END ACTIVE SESSION
- AX = 0003h subfn 04h
- DS:BX -> argument block (see #2627)
- Return: AX = status (see #2618)
- SeeAlso: AX=0003h/SF=0Ah,AX=0003h/SF=0Dh,AX=0003h/SF=0Fh
-
- Format of VINES argument block for ending active session:
- Offset Size Description (Table 2627)
- 00h BYTE session ID (00h)
- 01h BYTE 04h (function "end active session")
- --------N-610003SF05-------------------------
- INT 61 - Banyan VINES - ASYNC TERMINAL EMULATION - SET SESSION PARAMETER
- AX = 0003h subfn 05h
- DS:BX -> argument block (see #2628)
- Return: AX = status (see #2618)
- SeeAlso: AX=0003h/SF=00h,AX=0003h/SF=06h,AX=0003h/SF=08h
-
- Format of VINES argument block for setting session parameters:
- Offset Size Description (Table 2628)
- 00h BYTE session ID (00h)
- 01h BYTE 05h (function "set session parameter")
- 02h BYTE parameter number (see #2629)
- 03h BYTE new parameter value
-
- (Table 2629)
- Values for parameter number:
- 00h line speed (00h=any, 01h=50, 02h=110, 03h=134.5, 04h=150,
- 05h=300, 06h=600, 07h=1200, 08h=2400, 09h=4800, 0Ah=9600)
- 01h parity (00h=none, 01h=odd, 02h=even)
- 02h duplex (00h=full, 01h=half)
- 03h character size (00h=7 bits, 01h=8 bits)
- 04h stop bits (00h=1, 01h=2)
- 05h XON/XOFF flow control (00h=no, 01h=yes)
- 07h intercharacter delay in tenths of a second
- 08h interline delay in tenths of a second
- 09h auto linefeed (00h=no, 01h=yes)
- 0Ah filter control characters (00h=no, 01h=yes)
- 0Bh terminal type (00h=VT100,01h=glassTTY,02h=VT52,03h=IBM3101)
- 0Ch auto wrap (00h=no, 01h=yes)
- 0Dh cursor shape (00h=underscore, 01h=block)
- 0Eh character set (00h=UK, 01h=US ASCII)
- 0Fh printer port (00h=LPT1, 01h=LPT2, 02h=LPT3)
- SeeAlso: #2628
- --------N-610003SF06-------------------------
- INT 61 - Banyan VINES - ASYNC TERMINAL EMULATION - GET SESSION PARAMETER
- AX = 0003h subfn 06h
- DS:BX -> argument block (see #2630)
- Return: AX = status (see #2618)
- SeeAlso: AX=0003h/SF=00h,AX=0003h/SF=05h,AX=0003h/SF=07h
-
- Format of VINES argument block for getting session parameters:
- Offset Size Description (Table 2630)
- 00h BYTE session ID (00h)
- 01h BYTE 06h (function "get session parameter")
- 02h BYTE parameter number (see #2629)
- 03h BYTE (ret) current parameter value
- --------N-610003SF07-------------------------
- INT 61 - Banyan VINES - ASYNC TERMINAL EMULATION - SET TAB SETTINGS
- AX = 0003h subfn 07h
- DS:BX -> argument block (see #2631)
- Return: AX = status (see #2618)
- SeeAlso: AX=0003h/SF=05h,AX=0003h/SF=08h
-
- Format of VINES argument block for setting tab settings:
- Offset Size Description (Table 2631)
- 00h BYTE session ID (00h)
- 01h BYTE 07h (function "set tab settings")
- 02h WORD pointer to 80-byte buffer in caller's current DS
- each byte = 00h if no tab, 01h if tab at that position
- --------N-610003SF08-------------------------
- INT 61 - Banyan VINES - ASYNC TERMINAL EMULATION - GET TAB SETTINGS
- AX = 0003h subfn 08h
- DS:BX -> argument block (see #2632)
- Return: AX = status (see #2618)
- SeeAlso: AX=0003h/SF=06h,AX=0003h/SF=07h
-
- Format of VINES argument block for getting tab settings:
- Offset Size Description (Table 2632)
- 00h BYTE session ID (00h)
- 01h BYTE 08h (function "get tab settings")
- 02h WORD pointer to 80-byte buffer in caller's current DS
- each byte set to 00h if no tab, 01h if tab at that position
- --------N-610003SF09-------------------------
- INT 61 - Banyan VINES - ASYNC TERMINAL EMULATION - REFRESH EMULATION SCREEN
- AX = 0003h subfn 09h
- DS:BX -> argument block (see #2633)
- Return: AX = status (see #2618)
- SeeAlso: AX=0003h/SF=00h,AX=0003h/SF=0Bh
-
- Format of VINES argument block for Function 0003h subfunction 09h:
- Offset Size Description (Table 2633)
- 00h BYTE session ID (00h)
- 01h BYTE 09h (function "refresh emulation screen")
- --------N-610003SF0A-------------------------
- INT 61 - Banyan VINES - ASYNC TERMINAL EMULATION - SUSPEND SESSION TEMPORARILY
- AX = 0003h subfn 0Ah
- DS:BX -> argument block (see #2634)
- Return: AX = status (see #2618)
- SeeAlso: AX=0003h/SF=04h,AX=0003h/SF=09h,AX=0003h/SF=0Bh,AX=0003h/SF=0Dh
-
- Format of VINES argument block:
- Offset Size Description (Table 2634)
- 00h BYTE session ID (00h)
- 01h BYTE 0Ah (function "suspend session temporarily")
- 02h WORD size of session information to be saved
- 04h WORD pointer to buffer in caller's DS
- --------N-610003SF0B-------------------------
- INT 61 - Banyan VINES - ASYNC TERMINAL EMULATION - RESUME SUSPENDED SESSION
- AX = 0003h subfn 0Bh
- DS:BX -> argument block (see #2635)
- Return: AX = status (see #2618)
- SeeAlso: AX=0003h/SF=09h,AX=0003h/SF=0Ah
-
- Format of VINES argument block:
- Offset Size Description (Table 2635)
- 00h BYTE session ID (00h)
- 01h BYTE 0Bh (function "restore previously suspended session")
- 02h WORD size of buffer into which session info is restored
- 04h WORD pointer to buffer in caller's DS
- --------N-610003SF0C-------------------------
- INT 61 - Banyan VINES - ASYNC TERMINAL EMULATION - SET SCROLL LOCK CHECKING
- AX = 0003h subfn 0Ch
- DS:BX -> argument block (see #2636)
- Return: AX = status (see #2618)
- SeeAlso: AX=0003h/SF=00h
-
- Format of VINES argument block:
- Offset Size Description (Table 2636)
- 00h BYTE session ID (00h)
- 01h BYTE 0Ch (function "set state of scroll lock checking")
- 02h BYTE check_scroll_lock flag
- 00h off
- 01h on (display of host data stopped while ScrollLock on)
- --------N-610003SF0D-------------------------
- INT 61 - Banyan VINES - ASYNC TERMINAL EMULATION - EXIT EMULATION
- AX = 0003h subfn 0Dh
- DS:BX -> argument block (see #2637)
- Return: AX = status (see #2618)
- SeeAlso: AX=0003h/SF=04h,AX=0003h/SF=0Ah
-
- Format of VINES argument block:
- Offset Size Description (Table 2637)
- 00h BYTE session ID (00h)
- 01h BYTE 0Dh (function "exit emulation")
- --------N-610003SF0E-------------------------
- INT 61 - Banyan VINES - ASYNC TERMINAL EMULATION - INTERRUPT ON CHAR FROM HOST
- AX = 0003h subfn 0Eh
- DS:BX -> argument block (see #2638)
- Return: AX = status (see #2618)
- SeeAlso: AX=0003h/SF=00h,AX=0003h/SF=14h
-
- Format of VINES argument block:
- Offset Size Description (Table 2638)
- 00h BYTE session ID (00h)
- 01h BYTE 0Eh (function "interrupt on character from host")
- 02h DWORD pointer to routine to be called (0000h:0000h = don't call)
- 06h DWORD stack pointer to use when call is made
- --------N-610003SF0F-------------------------
- INT 61 - Banyan VINES - ASYNC TERMINAL EMULATION - START A SESSION
- AX = 0003h subfn 0Fh
- DS:BX -> argument block (see #2639)
- Return: AX = status (see #2618)
- SeeAlso: AX=0003h/SF=04h,AX=0003h/SF=0Bh
-
- Format of VINES argument block:
- Offset Size Description (Table 2639)
- 00h BYTE session ID (00h)
- 01h BYTE 0Fh (function "start a session")
- 02h WORD pointer to information area in caller's current DS (see #2640)
-
- Format of VINES information area:
- Offset Size Description (Table 2640)
- 00h WORD length of service name
- 02h WORD pointer to service name in caller's DS
- 04h BYTE type of connection (00h=connection name, 01h=dialout)
- 05h WORD length of connection name/telephone number
- 07h WORD pointer to connection name/telephone number
- --------N-610003SF10-------------------------
- INT 61 - Banyan VINES - ASYNC TERMINAL EMULATION - START/STOP PRINTING
- AX = 0003h subfn 10h
- DS:BX -> argument block (see #2641)
- Return: AX = status (see #2618)
- SeeAlso: AX=0003h/SF=06h,AX=0003h/SF=13h
-
- Format of VINES argument block:
- Offset Size Description (Table 2641)
- 00h BYTE session ID (00h)
- 01h BYTE 10h (function "start/stop printing of data received from host")
- 02h WORD print capture flag (00h=off, 01h=on)
- --------N-610003SF11-------------------------
- INT 61 - Banyan VINES - ASYNC TERMINAL EMULATION - GET FILE TRANSFER PARAMETERS
- AX = 0003h subfn 11h
- DS:BX -> argument block (see #2642)
- Return: AX = status (see #2618)
- SeeAlso: AX=0003h/SF=00h,AX=0003h/SF=12h
-
- Format of VINES argument block:
- Offset Size Description (Table 2642)
- 00h BYTE session ID (00h)
- 01h BYTE 11h (function "get file transfer parameters")
- 02h WORD pointer to info area in caller's current DS (see #2643)
-
- Format of VINES info area:
- Offset Size Description (Table 2643)
- 00h BYTE protocol flag (00h none, 01h Kermit)
- 01h BYTE direction flag (00h send, 01h receive)
- 02h BYTE length of null-terminated PC filename
- 03h DWORD pointer to null-terminated PC filename
- 07h BYTE length of null-terminated host filename
- 08h DWORD pointer to null-terminated host filename
- --------N-610003SF12-------------------------
- INT 61 - Banyan VINES - ASYNC TERMINAL EMULATION - GET CONNECTION INFORMATION
- AX = 0003h subfn 12h
- DS:BX -> argument block (see #2644)
- Return: AX = status (see #2618)
- SeeAlso: AX=0003h/SF=11h,AX=0003h/SF=15h
-
- Format of VINES argument block:
- Offset Size Description (Table 2644)
- 00h BYTE session ID (00h)
- 01h BYTE 12h (function "get connection information")
- 02h WORD offset of buffer for connection information (see #2645)
-
- Format of VINES connection information:
- Offset Size Description (Table 2645)
- 00h WORD length of service name (returned)
- 02h WORD pointer to 64-byte buffer for service name
- 04h BYTE type of connection
- 00h connection name
- 01h dialout
- 05h WORD length of connection name/telephone number
- 07h WORD pointer to 64-byte buffer for name/telno
- 09h BYTE server line number being used (returned)
- --------N-610003SF13-------------------------
- INT 61 - Banyan VINES - ASYNC TERMINAL EMULATION - START/STOP TRACING TRAFFIC
- AX = 0003h subfn 13h
- DS:BX -> argument block (see #2646)
- Return: AX = status (see #2618)
- SeeAlso: AX=0003h/SF=00h,AX=0003h/SF=0Eh
-
- Format of VINES argument block:
- Offset Size Description (Table 2646)
- 00h BYTE session ID (00h)
- 01h BYTE 13h (function "start/stop tracing data traffic in session")
- 02h BYTE trace flag (00h=off, 01h=on)
- --------N-610003SF14-------------------------
- INT 61 - Banyan VINES - ASYNC TERMINAL EMULATION - INTERRUPT ON HOST MESSAGE
- AX = 0003h subfn 14h
- DS:BX -> argument block (see #2647)
- Return: AX = status (see #2618)
- SeeAlso: AX=0003h/SF=0Eh
-
- Format of VINES argument block:
- Offset Size Description (Table 2647)
- 00h BYTE session ID (00h)
- 01h BYTE 14h (function "interrupt on message from host")
- 02h DWORD pointer to routine to be called (0000h:0000h = don't call)
- 06h DWORD stack pointer to use when call is made
- --------N-610003SF15-------------------------
- INT 61 - Banyan VINES - ASYNC TERMINAL EMULATION - RESET ERROR
- AX = 0003h subfn 15h
- DS:BX -> argument block (see #2648)
- Return: AX = status (see #2618)
- SeeAlso: AX=0003h/SF=00h,AX=0003h/SF=12h
-
- Format of VINES argument block:
- Offset Size Description (Table 2648)
- 00h BYTE session ID (00h)
- 01h BYTE 15h (function "reset error")
- --------V-610003-----------------------------
- INT 61 - OPTIMA 1024 VGA-Sync,ET-3000 chipset - REPORT ZOOM FACTOR
- AX = 0003h
- Return: AX = zoom factor
- Desc: returns the current zoom factor
- Range: unknown
- Notes: INT 61h is the default interrupt; the actual interrupt number can be
- obtained by calling INT 16/AH=FFh
- not all vendors include the Tseng TSR which supports these functions
- SeeAlso: AX=0000h"OPTIMA",AX=0005h"OPTIMA",INT 16/AH=FFh"OPTIMA"
- --------N-610004-----------------------------
- INT 61 - Banyan VINES - FILE SERVICE CONTROL
- AX = 0004h
- DS:DX -> request block (see #2650)
- Return: AX = status (see #2649)
- Notes: This service is handled by the redirector
- The request dispatch table contains dummy entries for requests 0Ah,
- 0Dh, 15h, 19h, and 1Ah, which always return error 0033h (invalid
- request ID)
-
- (Table 2649)
- Values for Banyan VINES file service control status code:
- 0000h successful
- 0002h file not found
- 0003h path not found
- 000Fh invalid drive
- 0015h drive not ready
- 0033h invalid request ID
- 0034h drive not connected
- 0037h drive number out of range
- 0038h drive number not available
- 003Ah invalid operation
- 0055h drive already connected
- 0057h invalid number of entries
-
- Format of Banyan VINES file service request block:
- Offset Size Description (Table 2650)
- 00h WORD request ID (1..28)
- 02h n BYTES additional parameters and result buffer
- --------N-610004SF0001-----------------------
- INT 61 - Banyan VINES - SET DRIVE CONNECTION
- AX = 0004h subfn 0001h
- DS:DX -> request block (see #2651)
- Return: AX = status (0000h,0037h,0038h,0055h) (see #2649)
- Desc: Maps the specified file service to a DOS drive letter
- Note: If an empty service name is specified, an existing connection will
- be removed
- SeeAlso: AX=0004h/SF=0002h
-
- Format of VINES Function 0004h/Subfunction 0001h request block:
- Offset Size Description (Table 2651)
- 00h WORD 0001h
- 02h BYTE drive number (0=default, 1=A, ...)
- 03h 16 BYTEs reserved
- 13h 64 BYTEs null-terminated file service name
- 53h 5 BYTEs reserved
- --------N-610004SF0002-----------------------
- INT 61 - Banyan VINES - GET DRIVE CONNECTION
- AX = 0004h subfn 0002h
- DS:DX -> request block (see #2652)
- Return: AX = status (0000h,0034h,0037h) (see #2649)
- Desc: Returns the StreetTalk name of the associated file service
- SeeAlso: AX=0004h/SF=0001h,AX=0004h/SF=0003h
-
- Format of VINES Function 0004h/Subfunction 0002h request block:
- Offset Size Description (Table 2652)
- 00h WORD 0002h
- 02h BYTE drive number (0=default, 1=A, ...)
- 03h 16 BYTEs reserved
- 13h 64 BYTEs buffer for null-terminated file service name
- 53h 5 BYTEs reserved
- --------N-610004SF0003-----------------------
- INT 61 - Banyan VINES - GET NETWORK DRIVE MAP
- AX = 0004h subfn 0003h
- DS:DX -> request block (see #2653)
- Return: AX = status
- 0000h drive map returned in request block
- Desc: Returns a bit map indicating which drive numbers are connected to a
- file service
- Note: Only bits 0-25 are significant
- SeeAlso: AX=0004h/SF=0002h
-
- Format of VINES Function 0004h/Subfunction 0003h request block:
- Offset Size Description (Table 2653)
- 00h WORD 0003h
- 02h DWORD buffer for drive map (bit0=A, bit1=B, ...)
- --------N-610004SF0004-----------------------
- INT 61 - Banyan VINES - SET USER NAME
- AX = 0004h subfn 0004h
- DS:DX -> request block (see #2654)
- Return: AX = status (0000h) (see #2649)
- Notes: Other side effects, if any, not known
- SeeAlso: AX=0004h/SF=0005h,#2680 [ID 0004h],AX=0007h/BX=0005h
-
- Format of VINES Function 0004h/Subfunction 0004h request block:
- Offset Size Description (Table 2654)
- 00h WORD 0004h
- 02h 64 BYTE null-terminated user name
- --------N-610004SF0005-----------------------
- INT 61 - Banyan VINES - GET USER NAME
- AX = 0004h subfn 0005h
- DS:DX -> request block (see #2655)
- Return: AX = status (see also #2649)
- 0000h user name returned in request block
- Desc: Returns the StreetTalk name of the currently logged in user
- SeeAlso: AX=0004h/SF=0004h,#2680 [ID 0004h],AX=0007h/BX=0005h
- SeeAlso: AX=0004h/SF=0004h
-
- Format of VINES Function 0004h/Subfunction 0005h request block:
- Offset Size Description (Table 2655)
- 00h WORD 0005h (subfunction "Get User Name")
- 02h 64 BYTE buffer for null-terminated user name
- --------N-610004SF0006-----------------------
- INT 61 - Banyan VINES - TEST DRIVE CONNECTION
- AX = 0004h subfn 0006h
- DS:DX -> request block (see #2656)
- Return: AX = status (see also #2649)
- 0000h connection flag returned in request block
- Desc: Returns a flag indicating if the drive is connected to a file service
- SeeAlso: AX=0004h/SF=0007h
-
- Format of VINES Function 0004h/Subfunction 0006h request block:
- Offset Size Description (Table 2656)
- 00h WORD 0006h (subfunction "Test Drive Connection")
- 02h BYTE buffer for connection flag (1 = not connected, 2 = connected)
- --------N-610004SF0007-----------------------
- INT 61 - Banyan VINES - GET CONNECTION DATA STRUCTURES
- AX = 0004h subfn 0007h
- DS:DX -> request block (see #2657)
- Return: AX = status (see also #2649)
- 0000h pointer returned in request block
- 0033h invalid request ID
- Desc: Returns pointers to various internal data structures
-
- Format of VINES Function 0004h/Subfunction 0007h request block:
- Offset Size Description (Table 2657)
- 00h WORD 0007h
- 02h BYTE request ID (0..7) (see #2658)
- 03h WORD buffer for pointer segment
- 05h WORD buffer for pointer offset
- SeeAlso: #2659,#2660
-
- (Table 2658)
- Values for VINES pointer ID:
- 00h job file table ???
- 01h drive handle table
- 02h drive connection table
- 03h IPC port of drive Z:
- 04h end of drive connection table
- 05h ???
- 06h ???
- 07h redirector data segment (offset=0)
- SeeAlso: #2657
-
- Format of VINES drive handle table:
- Offset Size Description (Table 2659)
- 00h BYTE handle to default drive (0 = not connected)
- 01h BYTE handle to drive A: (0 = not connected)
- ...
- 1Ah BYTE handle to drive Z: (0 = not connected)
- SeeAlso: #2660
-
- Format of VINES drive connection table:
- Offset Size Description (Table 2660)
- 00h WORD file service type (?) (0001h if drive Z:, 0000h else)
- 02h 16 BYTEs IPC port (contains the server serial number)
- 12h 46 BYTEs ???
- 40h 64 BYTEs null-terminated StreetTalk name of associated file service
- 80h 64 BYTEs null-terminated root directory (/ROOT: parameter of SETDRIVE)
- SeeAlso: #2659
- --------N-610004SF0008-----------------------
- INT 61 - Banyan VINES - GET SERVER SERIAL NUMBER
- AX = 0004h subfn 0008h
- DS:DX -> request block (see #2661)
- Return: AX = status (0000h,000Fh,0015h) (see #2649)
- Notes: The server ID is extracted from the IPC port address of the associated
- file service stored in the drive connection table
- The server serial number and the server subnet number are returned in
- big-endian (Motorola) format (i.e. MSB first)
- SeeAlso: AX=0004h/SF=0005h
-
- Format of VINES request block for getting server serial number:
- Offset Size Description (Table 2661)
- 00h WORD 0008h
- 02h WORD drive number (0=default, 1=A, ...)
- 04h DWORD buffer for server serial number
- 08h WORD buffer for server subnet number (always 0001h)
- --------N-610004SF0009-----------------------
- INT 61 - Banyan VINES - SET ??? PARAMETER
- AX = 0004h subfn 0009h
- DS:DX -> request block (see #2662)
- Return: AX = status (0000h) (see #2649)
- Notes: The specified WORD parameter is copied to offset 1702h of the
- redirector code segment (revision 5.53)
- SeeAlso: AX=0004h/SF=000Bh
-
- Format of VINES Function 0004h/Subfunction 0009h request block:
- Offset Size Description (Table 2662)
- 00h WORD 0009h
- 02h WORD parameter
- --------N-610004SF000B-----------------------
- INT 61 - Banyan VINES - GET ??? DRIVE PARAMETER
- AX = 0004h subfn 000Bh
- DS:DX -> request block (see #2663)
- Return: AX = status (0000h,0034h,0037h) (see #2649)
- Notes: This request returns a WORD value from the drive connection table
- read from offset 0012h of the specified drive's entry (usually 0037h)
- SeeAlso: AX=0004h/SF=0009h
-
- Format of VINES Function 0004h/Subfunction 000Bh request block:
- Offset Size Description (Table 2663)
- 00h WORD 000Bh
- 02h BYTE drive number (0=default, 1=A, ...)
- 03h WORD buffer for parameter
- --------N-610004SF000C-----------------------
- INT 61 - Banyan VINES - LOGOUT FROM VINES
- AX = 0004h subfn 000Ch
- DS:DX -> request block (see #2664)
- Return: AX = status 0000h (see #2649)
- Desc: Terminates a running VINES session and clears all session specific
- buffers
- SeeAlso: AX=0004h/SF=0008h
-
- Format of VINES Function 0004h/Subfunction 000Ch request block:
- Offset Size Description (Table 2664)
- 00h WORD 000Ch
- --------N-610004SF000E-----------------------
- INT 61 - Banyan VINES - GET ACCESS RIGHTS LIST (ARL)
- AX = 0004h subfn 000Eh
- DS:DX -> request block (see #2665)
- Return: AX = status (see also #2649)
- 0000h request has been processed
- Desc: Returns the owner, group, and extended access rights for the specified
- file or directory
- Note: A status of 0000h does not necessarily indicate a successful request;
- check the status word at offset 000Eh of the request block too
- SeeAlso: AX=0004h/SF=000Fh
-
- Format of VINES Function 0004h/Subfunction 000Eh request block:
- Offset Size Description (Table 2665)
- 00h WORD 000Eh (subfunction "Get Access Rights List")
- 02h BYTE drive number (0=default, 1=A, ...)
- 03h BYTE reserved
- 04h DWORD pointer to path specification (drive letter ignored)
- 08h DWORD pointer to ARL control block (see #2666)
- 0Ch WORD buffer for number of ARL entries (1..5)
- 0Eh WORD buffer for status (see #2667)
-
- Format of ARL control block:
- Offset Size Description (Table 2666)
- 00h 64 BYTEs 1st StreetTalk name (user, list, or service)
- 40h WORD 1st ARL
- 42h 64 BYTEs 2nd StreetTalk name (user, list, or service)
- 82h WORD 2nd ARL
- 84h 64 BYTEs 3rd StreetTalk name (user, list, or service)
- C4h WORD 3rd ARL
- C6h 64 BYTEs 4th StreetTalk name (user, list, or service)
- 106h WORD 4th ARL
- 108h 64 BYTEs 5th StreetTalk name (user, list, or service)
- 148h WORD 5th ARL
-
- (Table 2667)
- Values for VINES Get/Set Access Rights List status:
- 0000h successful
- 0002h file not found
- 0003h path not found
- 003Ah invalid operation
- 0057h invalid number of entries
- --------N-610004SF000F-----------------------
- INT 61 - Banyan VINES - SET ACCESS RIGHTS LIST (ARL)
- AX = 0004h subfn 000Fh
- DS:DX -> request block (see #2668)
- Return: AX = status (see also #2649)
- 0000h request has been processed
- Desc: Sets the owner, group, and extended access rights for the specified
- file or directory
- Note: A status of 0000h does not necessarily indicate a successful request;
- check the status word at offset 000Eh of the request block too
- If the number of ARL entries is less than 1 or greater than 5, error
- 0057h (invalid number of entries) is returned
- SeeAlso: AX=0004h/SF=000Eh
-
- Format of VINES Function 0004h/Subfunction 000Fh request block:
- Offset Size Description (Table 2668)
- 00h WORD 000Fh
- 02h BYTE drive number (0=default, 1=A, ...)
- 03h BYTE reserved
- 04h DWORD pointer to path specification (drive letter ignored)
- 08h DWORD pointer to ARL control block (see #2666)
- 0Ch WORD number of ARL entries (1..5)
- 0Eh WORD buffer for status (see #2667)
- --------N-610004SF0010-----------------------
- INT 61 - Banyan VINES - FILE SERVICE CONTROL - ???
- AX = 0004h subfn 0010h
- DS:DX -> request block (see #2669)
- Return: AX = status (see also #2649)
- 0000h request has been processed
- SeeAlso: AX=0004h/SF=000Fh
-
- Format of VINES Function 0004h/Subfunction 0010h request block:
- Offset Size Description (Table 2669)
- 00h WORD 0010h
- 02h BYTE drive number (0=default, 1=A, ...)
- 03h BYTE reserved
- 04h 64 BYTEs ???
- 44h 16 BYTEs IPC port (see #2577 at AX=0001h"Sosock")
- --------N-610004SF0013-----------------------
- INT 61 - Banyan VINES - GET VALUE OF GLOBAL VARIABLE
- AX = 0004h subfn 0013h
- DS:DX -> request block (see #2670)
- Return: AX = status (see also #2649)
- 0000h successful
- 0033h invalid request ID (returned if variable index out of range)
- Desc: Returns the value of the specified global variable
- Note: The data will be truncated if the specified buffer is not large enough.
- Check the length word in the request block to find out how many
- bytes should have been copied.
- SeeAlso: AX=0004h/SF=0014h,AX=0006h
-
- Format of request block:
- Offset Size Description (Table 2670)
- 00h WORD 0013h
- 02h WORD variable index (0000h-001Fh) (see #2671)
- 04h WORD buffer length (on exit set to # of bytes actually needed)
- 06h DWORD far pointer to result buffer
- SeeAlso: #2672
-
- (Table 2671)
- Values for variable indices:
- Index Length Description
- 0000h 1 ???
- 0001h 16 StreetTalk port
- 0002h 4 StreetTalk session handle
- 0003h 6 colors
- 0004h 64 StreetTalk name of currently logged in user
- 0005h 0 old clear text password (not applicable)
- 0006h 0 default group (not applicable)
- 0007h 1 number of messages in message queue
- 0008h 1 message flag
- 0009h 16 TalkPort
- 000Ah 2 TalkPort socket
- 000Bh 64 StreetTalk name of mail service
- 000Ch 2 message timeout
- 000Dh 2 next message place
- 000Eh 246 message queue (3 times 80 characters + 2 flag bytes)
- 000Fh 14 system nonce
- 0010h 2 failed login count
- 0011h 1 new mail message received
- 0012h 8 mail service capabilities
- 0013h 3 printer port diverted
- 0014h 32 international location
- 0015h 16 IPC port of drive Z:
- 0016h 1024 pointer to current directory table
- 0017h 2 maximum number of file volume mappings
- 0018h 24 routine to call back for messages (6 far pointers)
- 0019h 4 current virtual machine
- 001Ah 20 DOS redirector message bell tones
- 001Bh 2 various flags used for internal communication
- 001Ch 0 OS/2 client configuration (not applicable)
- 001Dh 8 redirector/IFS file version
- 001Eh 0 reserved (not applicable)
- 001Fh 4 address of VVINESD.386 dispatch
- --------N-610004SF0014-----------------------
- INT 61 - Banyan VINES - SET VALUE OF GLOBAL VARIABLE
- AX = 0004h subfn 0014h
- DS:DX -> request block (see #2672)
- Return: AX = status
- 0000h successful
- 0033h invalid request ID (returned if variable index out of range)
- Desc: Assigns a new value to the specified global variable
- Note: If the specified number of bytes to copy exceeds the size of the
- destination variable, nothing will be copied.
- SeeAlso: AX=0004h/SF=0013h,AX=0006h
-
- Format of request block:
- Offset Size Description (Table 2672)
- 00h WORD 0014h
- 02h WORD variable index (0000h-001Fh) (see #2671)
- 04h WORD number of bytes to copy
- 06h DWORD far pointer to new value
- SeeAlso: #2670
- --------N-610004SF0016-----------------------
- INT 61 - Banyan VINES - GET NUMBER OF OPEN FILES ON REMOTE DRIVE
- AX = 0004h subfn 0016h
- DS:DX -> request block (see #2673)
- Return: AX = status
- 0000h open file count returned in request block
- Desc: Counts the number of open files on the specified remote drive.
- Note: No error is returned if the specified drive number is invalid or points
- to a local drive. Use AX=0004h/SF=0006h to test if a given drive
- number is assigned to a remote drive.
- SeeAlso: AX=0004h/SF=0006h
-
- Format of request block:
- Offset Size Description (Table 2673)
- 00h WORD 0016h
- 02h BYTE drive number (0=default, 1=A:, ...)
- 03h BYTE reserved
- 04h WORD buffer for open file count
- SeeAlso: #2675
- --------N-610004SF0018-----------------------
- INT 61 - Banyan VINES - SET UNIDENTIFIED INTERNAL FLAG
- AX = 0004h subfn 0018h
- DS:DX -> request block (see #2674)
- Return: AX = status
- 0000h success
- Desc: Sets an unidentified BYTE variable in the redirector data segment to 1.
- Note: In the VINES 5.53 "REDIR4" redirector, this variable is located at
- DS:0B53.
-
- Format of request block:
- Offset Size Description (Table 2674)
- 00h WORD 0018h
- SeeAlso: #2675
- --------N-610004SF001B-----------------------
- INT 61 - Banyan VINES - UNIDENTIFIED DRIVE SPECIFIC FUNCTION
- AX = 0004h subfn 001Bh
- DS:DX -> request block (see #2675)
- Return: AX = status
- 0000h success
- 0034h drive not connected
- 0037h drive number out of range
- Desc: The purpose of this function is not known.
-
- Format of request block:
- Offset Size Description (Table 2675)
- 00h WORD 001Bh
- 02h BYTE drive number (0=default, 1=A:, ...)
- 03h BYTE ???
- 04h WORD ???
- 06h DWORD far pointer to data area
- 0Ah WORD ???
- 0Ch DWORD far pointer to data area
- 10h WORD buffer for result
- SeeAlso: #2673,#2675
- --------N-610004SF001C-----------------------
- INT 61 - Banyan VINES - UNIDENTIFIED FUNCTION
- AX = 0004h subfn 001Ch
- DS:DX -> request block (see #2676)
- Return: AX = status
- 0000h success
- 0057h invalid number of entries
- Desc: The purpose of this function is not known.
-
- Format of request block:
- Offset Size Description (Table 2676)
- 00h WORD 001Ch
- 02h WORD ???
- 04h WORD ???
- 06h WORD ???
- 08h WORD ???
- 0Ah DWORD far pointer to data area (14 bytes)
- --------V-610004-----------------------------
- INT 61 - OPTIMA 1024 VGA-Sync,ET-3000 chipset - ENTER SPECIFY MODE
- AX = 0004h
- Range: unknown
- Notes: Specify Mode is enabled by hot key (seeAlso below), and allows
- panning and zooming via the numeric keypad.
- INT 61 is the default interrupt; the actual interrupt number can be
- obtained by calling INT 16/AH=FFh
- not all vendors include the Tseng TSR which supports these functions
- SeeAlso: AX=0000h"OPTIMA",AX=0007h"OPTIMA",INT 16/AH=FFh"OPTIMA"
- --------N-610005-----------------------------
- INT 61 - Banyan VINES - PRINT SERVICE CONTROL
- AX = 0005h
- DS:DX -> request block (see #2677)
- Return: AX = status
- 0000h successful
- 0001h network software not installed or incompatible
- Notes: This service is handled by the redirector
- The size of the request/result block depends on the selected function
- and the value at offset 04h.
- SeeAlso: INT 2F/AX=D702h
-
- Format of VINES request/result block for printer control:
- Offset Size Description (Table 2677)
- 00h WORD function
- 0201h "endspool" all data for a print job has been sent
- (no bytes returned)
- 0202h "deassign" the virtual printer port
- Before the printer port is deassigned all data sent
- to it is endspooled.
- (no bytes returned)
- 0205h "get_active" get currently active printer port
- (1 byte required for result)
- Returns: - the currently active printer port (1-3) (0 if
- there is none)
- 0207h ??? purpose unknown; called periodically every second
- 020Ch "get_bannertitle" gets the title which is printed on the
- banner page of a print job sent to the virtual port
- (16 bytes required for result)
- Returns: - the null-terminated banner title
- 020Eh "get_servicename" gets the name of the print service
- assigned to the virtual port
- (64 bytes required for result)
- Returns: - the null-terminated print service name assigned
- to the virtual port
- 0210h "set_bannertitle" sets the title which is printed on the
- banner page of a print job sent to the virtual port
- (16 bytes required for input)
- Input: - the null-terminated banner title (max 16 chars)
- 0212h "set_servicename" sets the name of the print service
- assigned to the virtual port
- (64 bytes required for input)
- Input: - the null-terminated print service name
- (max 64 chars)
- 0216h "get_job_paper_format" gets the paper format for
- subsequent print jobs
- (16 bytes required for result)
- Returns: - the null-terminated paper format
- 0217h "set_job_paper_format" sets the paper format for
- subsequent print jobs
- (16 bytes required for input)
- Input: - the null-terminated paper format (max 16 chars)
- 02h WORD number of active virtual port (1-3) (0 for function 0205h)
- 04h WORD Offset into the request block from which additional input
- is to be read and/or at which the result is to be copied
- (if there is any). Therefore the smallest block size for a
- function which returns a result is
- this offset + the maximum number of returned bytes - 1
- 06h WORD 0000h
- --------V-610005-----------------------------
- INT 61 - OPTIMA 1024 VGA-Sync - QUERY ZOOM WINDOW
- AX = 0005h
- BX:CX -> buffer for window parameters (see #2678)
- Range: unknown
- Notes: INT 61 is the default interrupt; the actual interrupt number can be
- obtained by calling INT 16/AH=FFh
- not all vendors include the Tseng TSR which supports these functions
- SeeAlso: AX=0000h"OPTIMA",AX=0003h"OPTIMA",AX=0006h"OPTIMA"
- SeeAlso: INT 16/AH=FFh"OPTIMA"
-
- Format of Optima 1024 window parameters:
- Offset Size Description (Table 2678)
- 00h WORD X start of zoom window
- 02h WORD Y start of zoom window
- 04h WORD X end of zoom window
- 06h WORD Y end of zoom window
- 08h WORD current zoom factor
- 0Ah WORD zoom offset start X
- 0Ch WORD zoom offset start Y
- --------V-610006-----------------------------
- INT 61 - OPTIMA 1024 VGA-Sync,ET-3000 chipset - SET ZOOM WINDOW
- AX = 0006h
- BX:CX -> zoom window description (see #2679)
- Range: unknown
- Notes: width of zoom window must be a multiple of the pixel replication (zoom)
- factor
- INT 61 is the default interrupt; the actual interrupt number can be
- obtained by calling INT 16/AH=FFh
- not all vendors include the Tseng TSR which supports these functions
- SeeAlso: AX=0000h"OPTIMA",AX=0001h"OPTIMA",AX=0005h"OPTIMA",AX=0008h"OPTIMA"
- SeeAlso: INT 16/AH=FFh"OPTIMA"
-
- Format of Optima 1024 zoom window description:
- Offset Size Description (Table 2679)
- 00h WORD X start of zoom window
- 02h WORD Y start of zoom window
- 04h WORD X end of zoom window
- 06h WORD Y end of zoom window
- --------N-610006-----------------------------
- INT 61 - Banyan VINES - GET ADDRESS OF GLOBAL VARIABLE
- AX = 0006h
- BX = bits 14..0: request ID (see #2680)
- bit 15: result destination flag (0 for ES:BX, 1 for AX:BX)
- Return: AX = status
- 0000h successful
- 000Bh invalid request
- ES:BX -> internal variable (bit 15 of BX was not set)
- AX:BX -> internal variable (bit 15 of BX was set)
- Note: This service is handled by the redirector
- SeeAlso: AX=0004h/SF=0013h,AX=0004h/SF=0014h
-
- (Table 2680)
- Values for request IDs:
- Request Length Description
- 0000h 1 ???
- 0001h 16 StreetTalk port
- 0002h 4 StreetTalk session handle
- 0003h 6 colors
- 0004h 64 StreetTalk name of currently logged in user
- 0005h 0 old clear text password (always returns error code 000Bh)
- 0006h 0 default group (not applicable)
- 0007h 1 message queue count
- 0008h 1 message flag
- 0009h 16 TalkPort
- 000Ah 2 TalkPort socket
- 000Bh 64 StreetTalk name of mail service
- 000Ch 2 message timeout
- 000Dh 2 next message place
- 000Eh 246 message queue
- 000Fh 14 system nonce
- 0010h 2 failed login count
- 0011h 1 new mail message received
- 0012h 8 mail capabilities
- 0013h 3 printer port diverted
- 0014h 32 international location
- 0015h 16 IPC port of drive Z:
- 0016h 1024 pointer to current directory table
- 0017h 2 maximum number of file volume mappings
- 0018h 24 routine to call back for messages
- 0019h 4 current virtual machine
- 001Ah 20 DOS redirector message bell tones
- 001Bh 2 various flags used for internal communication
- 001Ch 0 OS/2 client configuration (always returns error code 000Bh)
- 001Dh 8 redirector/IFS file version
- 001Eh 0 reserved (always returns error code 000Bh)
- 001Fh 4 address of VVINESD.386 dispatch
- --------V-610007-----------------------------
- INT 61 - OPTIMA 1024 VGA-Sync,ET-3000 chipset - QUERY APPLICATION KEY
- AX = 0007h
- Return: AX = current state (0000h/0001h)
- Desc: returns the current toggle state of the application (END) key in
- specify mode. E.g. in the OPTIMA AutoCAD driver, 0 means AutoCAD
- calls INT 61/AX=0001h every time the crosshair cursor moves.
- Notes: In specify mode, the END key has been reserved for applications.
- INT 61 is the default interrupt; the actual interrupt number can be
- obtained by calling INT 16/AH=FFh
- not all vendors include the Tseng TSR which supports these functions
- SeeAlso: AX=0000h"OPTIMA",AX=0001h"OPTIMA",AX=0004h"OPTIMA"
- SeeAlso: INT 16/AH=FFh"OPTIMA",INT 7A/AX=0001h"AutoCAD"
- --------N-610007BX0000-----------------------
- INT 61 - Banyan VINES - RECONNECT TO STREETTALK
- AX = 0007h
- BX = 0000h
- Return: AX = status (see #2681)
- SeeAlso: AX=0007h/BX=0002h
-
- (Table 2681)
- Values for VINES function status:
- 0000h successful
- 0001h requested handler not installed or incompatible
- 000Bh service busy
- 000Ch invalid request ID
- 03E9h incorrect name syntax
- 03EAh organization name too long
- 03EBh group name too long
- 03ECh item name too long
- 03EDh StreetTalk name too long
- 03F3h organization not found
- 03F4h group not found
- 03F5h StreetTalk name not found
- 03F8h not a StreetTalk name
- 0409h modify access denied
- 040Dh appropriate StreetTalk name unavailable
- 0411h all matching names have been returned
- 0412h some groups unavailable, all available matches returned
- --------N-610007BX0001-----------------------
- INT 61 - Banyan VINES - GET MM PORT FOR A SERVICE
- AX = 0007h
- BX = 0001h
- DS:DX -> StreetTalk service name (64 bytes)
- DS:DI -> 16-byte buffer for IPC port (see #2577 at AX=0001h"Sosock")
- Return: AX = status (see #2681)
- Notes: This function calls AX=0007/BX=0002h with the port count set to 1 and
- the port type set to 00h
- SeeAlso: AX=0007h/BX=0002h,AX=0007h/BX=0004h,AX=0007h/BX=000Ah
- --------N-610007BX0002-----------------------
- INT 61 - Banyan VINES - GET PORTS FOR A SERVICE
- AX = 0007h
- BX = 0002h
- DS:DX -> StreetTalk service name
- DS:DI -> port record block (see #2682)
- Return: AX = status (see #2681)
- Note: if the requested number of ports is greater than five, it will be reset
- to five
- SeeAlso: AX=0007h/BX=0001h,AX=0007h/BX=0003h,AX=0007h/BX=0004h
- SeeAlso: AX=0007h/BX=000Ah
-
- Format of VINES port record block:
- Offset Size Description (Table 2682)
- 00h WORD (call) number of 17-byte elements (01h-05h) to be filled
- 02h BYTE (call) port type for first port
- 03h 16 BYTEs (ret) port (see #2577)
- 13h BYTE (call) port type for second port
- 14h 16 BYTEs (ret) port (see #2577)
- 24h BYTE (call) port type for third port
- 25h 16 BYTEs (ret) port (see #2577)
- 35h BYTE (call) port type for fourth port
- 36h 16 BYTEs (ret) port (see #2577)
- 46h BYTE (call) port type for fifth port
- 47h 16 BYTEs (ret) port (see #2577)
- 57h BYTE reserved
- SeeAlso: #2684
- --------N-610007BX0003-----------------------
- INT 61 - Banyan VINES - FIND A SERVICE
- AX = 0007h
- BX = 0003h
- DS:DX -> port control block (see #2683)
- Return: AX = status (see AX=0007h/BX=0000h)
- SeeAlso: AX=0007h/BX=0002h,AX=0007h/BX=0004h,AX=0007h/BX=0005h
-
- Format of port control block:
- Offset Size Description (Table 2683)
- 00h WORD ???
- 02h WORD ???
- 04h 16 BYTEs IPC port (see #2577 at AX=0001h"Sosock")
- 14h 5 WORDs ???
- SeeAlso: #2689
- --------N-610007BX0004-----------------------
- INT 61 - Banyan VINES - SET PORTS FOR A SERVICE
- AX = 0007h
- BX = 0004h
- DS:DX -> StreetTalk name of service (max 64 bytes)
- DS:DI -> port record block (see #2684)
- Return: AX = status (see #2681)
- SeeAlso: AX=0007h/BX=0002h,AX=0007h/BX=0003h,AX=0007h/BX=000Ah
-
- Format of VINES port record block:
- Offset Size Description (Table 2684)
- 00h WORD number of 17-byte elements
- 02h BYTE port type for first port
- 03h 16 BYTEs first IPC port (see #2577)
- 13h BYTE port type for second port
- 14h 16 BYTEs second IPC port (see #2577)
- 24h BYTE port type for third port
- 25h 16 BYTEs third IPC port (see #2577)
- 35h BYTE port type for fourth port
- 36h 16 BYTEs fourth IPC port (see #2577)
- 46h BYTE port type for fifth port
- 47h 16 BYTEs fifth IPC port (see #2577)
- 57h BYTE reserved
- SeeAlso: #2682
- --------N-610007BX0005-----------------------
- INT 61 - Banyan VINES - GET USER NAME
- AX = 0007h
- BX = 0005h
- DS:DX -> 64-byte buffer for user's StreetTalk name
- Return: AX = status (see also #2681)
- 0000h successful
- 0001h network software not installed or incompatible
- Note: if no user logged in, first byte of returned name will be 00h
- SeeAlso: AX=0007h/BX=0007h
- --------N-610007BX0006-----------------------
- INT 61 - Banyan VINES - TRANSLATE ERROR INTO ASCII STRING
- AX = 0007h
- BX = 0006h
- SI = error code (>100)
- DS:DX -> 80-byte buffer for error text
- Return: AX = status (see also #2681)
- 0000h successful
- 0001h network software not installed or incompatible
- --------N-610007BX0007-----------------------
- INT 61 - Banyan VINES - VERIFY EXISTENCE OF NAME AND RETURN CANONICAL FORM
- AX = 0007h
- BX = 0007h
- DS:DX -> NiceName block (see #2685)
- Return: AX = status (see #2681)
- SeeAlso: AX=0007h/BX=0005h,AX=0007h/BX=0008h
-
- Format of VINES NiceName block:
- Offset Size Description (Table 2685)
- 00h WORD type of name
- 0064h (100) organization
- 00C8h (200) group
- 012Ch (300) item
- 02h WORD pointer to ASCIZ input name
- 04h WORD pointer to 64-byte buffer for output name
- SeeAlso: #2686
- --------N-610007BX0008-----------------------
- INT 61 - Banyan VINES - ENUMERATE StreetTalk NAMES
- AX = 0007h
- BX = 0008h
- DS:DX -> enumerate block (see #2686)
- Return: AX = status (see also #2681)
- 0000h successful
- 0411h all matching names have been returned
- 0412h some groups unavailable, all available matches returned
- Note: each program using this call should continue until a nonzero status
- is returned; otherwise, some resources will not be freed for several
- hours
- SeeAlso: AX=0007h/BX=0005h,AX=0007h/BX=0007h,AX=0007h/BX=0009h
-
- Format of VINES enumerate block:
- Offset Size Description (Table 2686)
- 00h WORD return code
- 02h WORD pointer to pattern string
- 04h WORD enumerate type
- 0064h (100) organization
- 00C8h (200) group
- 012Ch (300) item
- 06h WORD enumerate class
- 0000h unspecified (return all matching items)
- 0001h user names
- 0002h service names
- 0003h list names
- 0004h nicknames
- 08h WORD pointer to category criteria block (see #2687) or 0
- 0Ah WORD pointer to array of 64-byte returned names
- 0Ch WORD number of names returned
- 0Eh 6 BYTEs reserved for subsequent enumerated calls (set to zeros on first
- call)
- SeeAlso: #2685
-
- Format of category criteria block:
- Offset Size Description (Table 2687)
- 00h WORD exclude flag
- 0000h return only items with the specified categories
- 0001h return all items except those with the given categories
- 02h WORD number of categories (max 5, 0000h = match all categories)
- 04h WORD category 1 value (see #2688)
- 06h WORD category 2 value
- 08h WORD category 3 value
- 0Ah WORD category 4 value
- 0Ch WORD category 5 value
- SeeAlso: #2686
-
- (Table 2688)
- Values for common VINES service categories:
- 0001h server service
- 0002h file service
- 0003h print service
- 0004h mail service
- 0005h StreetTalk
- 0006h time service
- 0007h FTP service
- 0008h semaphore service
- 0009h 3270/SNA service
- 000Ah terminal emulation service
- 000Bh asynchronous terminal service
- 000Ch NETBIOS service
- 000Dh PC-based service
- 000Eh BSC service
- 000Fh APPC service
- 0010h NM service
- 0011h VS service
- 0012h POP service
- 0013h AFP service
- 0014h VCS service
- 0015h EMS service
- 0016h LN service
- 0017h BS service
- 0023h RIPL service
- 0064h ADM service
- SeeAlso: #2687
- --------N-610007BX0009-----------------------
- INT 61 - Banyan VINES - TRANSLATE ERROR INTO ASCII STRING (SELECTED PORT)
- AX = 0007h
- BX = 0009h
- SI = error code
- DS:DX -> 80-byte buffer for error text
- DS:DI -> IPC port (16 bytes; see AX=0001h#"Sosock" for port format)
- Return: AX = status (see AX=0007h/BX=0000h)
- Note: Same as AX=0007h/BX=0006h, except IPC port is specified explicitly
- SeeAlso: AX=0007h/BX=0006h
- --------N-610007BX000A-----------------------
- INT 61 - Banyan VINES - internal, OS/2 only - GET MANY PORTS FOR SERVICE
- AX = 0007h
- BX = 000Ah
- DS:DX -> port control block (see #2689)
- Return: AX = status (see AX=0007h/BX=0000h)
- Note: This function cannot be called from applications, as the DS register
- is checked against the redirector data segment address (status code
- 0001h will be returned if DS doesn't match)
- SeeAlso: AX=0007h/BX=0001h,AX=0007h/BX=0002h,AX=0007h/BX=0004h
-
- Format of port control block:
- Offset Size Description (Table 2689)
- 00h WORD ???
- 02h WORD ???
- 04h 16 BYTEs IPC port (see #2577 at AX=0001h"Sosock")
- 14h 14 WORDs ???
- SeeAlso: #2683
- --------V-610008-----------------------------
- INT 61 - OPTIMA 1024 VGA-Sync,ET-3000 chipset - SET ZOOM OFFSET
- AX = 0008h
- BX = X start of zoom offset
- CX = Y start of zoom offset
- Desc: specifies the first byte of video memory to appear in the zoom window
- Range: unknown
- Notes: INT 61 is the default interrupt; the actual interrupt number can be
- obtained by calling INT 16/AH=FFh
- not all vendors include the Tseng TSR which supports these functions
- SeeAlso: AX=0000h"OPTIMA",AX=0006h"OPTIMA",INT 16/AH=FFh"OPTIMA"
- --------N-610008BX0000-----------------------
- INT 61 - Banyan VINES - TALKPORT SERVICE - GET HANDLER ADDRESS
- AX = 0008h
- BX = 0000h
- Return: AX = status
- 0000h successful
- ES:DX = far pointer to handler
- Desc: The TalkPort is a facility to display event messages (e.g. mail
- received, printing on a local printer, ...) on the screen
- Note: This service is handled by the redirector
- SeeAlso: AX=0008h/BX=0001h,AX=0008h/BX=0002h
- --------N-610008BX0001-----------------------
- INT 61 - Banyan VINES - TALKPORT SERVICE - SET HANDLER ADDRESS
- AX = 0008h
- BX = 0001h
- ES:DX -> new handler
- Return: AX = status
- 0000h successful
- SeeAlso: AX=0008h/BX=0000h
- --------N-610008BX0002-----------------------
- INT 61 - Banyan VINES - TALKPORT SERVICE - POST MESSAGE ON LOCAL DISPLAY
- AX = 0008h
- BX = 0002h
- CX = message display flags (see #2690)
- DS:DX -> ASCIZ string to display (only first 80 chars used)
- Return: AX = status
- 0000h successful
- 000Bh message display function currently busy
- 000Ch message queue full
- Notes: queues up to three messages to be displayed on the bottom line
- This service is handled by the redirector
- In a DOS session, TalkPort messages are displayed on display line 25;
- in a Windows session, TalkPort messages are displayed in dialog boxes
- SeeAlso: AX=0008h/BX=0000h,AX=0008h/BX=0003h
-
- Bitfields for VINES message display flags:
- Bit(s) Description (Table 2690)
- 0 message will remain on screen until user presses ^X
- 1 ring bell after displaying message
- 2 blink
- --------N-610008BX0003-----------------------
- INT 61 - Banyan VINES - TALKPORT SERVICE - INTERCEPT VINES 25th-LINE MESSAGES
- AX = 0008h
- BX = 0003h
- DS:DX -> request block (see #2691)
- Return: AX = status
- 0000h successful
- 0001h network software not installed or incompatible
- Notes: message handler should not call BIOS or DOS functions, and should
- either call next handler or simply return
- to stop intercepting messages, set prev and next request blocks to
- point at each other
- SeeAlso: AX=0008h/BX=0002h
-
- Format of VINES request block for 25-th line messages:
- Offset Size Description (Table 2691)
- 00h DWORD pointer to user-written message handler
- 04h DWORD pointer to next request block (filled in by VINES)
- 08h DWORD pointer to previous request block (filled in by VINES)
- 0Ch DWORD pointer to message storage area (filled by VINES) (see #2692)
-
- Format of message storage area:
- Offset Size Description (Table 2692)
- 00h 16 BYTEs IPC port of message sender (see #2577)
- 10h BYTE message flags
- 11h WORD reserved
- 13h BYTE length of message
- 14h 80 BYTEs message text
- SeeAlso: #2691
- --------N-610009-----------------------------
- INT 61 - Banyan VINES - NETBIOS CLIENT SERVICE
- AX = 0009h
- other parameters, if any, unknown
- --------N-61000A-----------------------------
- INT 61 - Banyan VINES - SECONDARY 3270 INTERFACE
- AX = 000Ah
- Note: either 3270/SNA or 3270/BSC interface will use AX=000Ah, depending on
- which is loaded second. The first interface loaded will use AX=0002h
- SeeAlso: INT 61/AX=0002h
- --------N-61000B-----------------------------
- INT 61 - Banyan VINES - SEMAPHORE SERVICE
- AX = 000Bh
- other parameters, if any, unknown
- --------N-61000C-----------------------------
- INT 61 - Banyan VINES - 3270 KEYBOARD HANDLER
- AX = 000Ch
- other parameters, if any, unknown
- --------N-61000D-----------------------------
- INT 61 - Banyan VINES - T3270 SERVICE FUNCTION
- AX = 000Dh
- other parameters, if any, unknown
- --------N-61000E-----------------------------
- INT 61 - Banyan VINES - ENHANCED 3270 SERVICE
- AX = 000Eh
- other parameters, if any, unknown
- --------N-61000F-----------------------------
- INT 61 - Banyan VINES - VINES SOCKET API (FAR DATA)
- AX = 000Fh
- CX:BX -> request block (see #2693)
- DX = application's data segment (should be = CX)
- ES = DS
- Return: AX = status
- 0000h successful
- 0099h invalid operation
- 00A5h resource not available
- Desc: StreetTalk access with session handles
- Notes: This service is handled by the adapter driver
- The request dispatch table contains dummy entries for subfunctions
- 06h, 0Dh, 0Eh, 0Fh, 10h, and 11h, which always return error 0099h
- (invalid operation) in the request block's result buffer
- This interface does the same as the corresponding AX=0001h interface,
- but with a slightly modified request block structure (i.e it allows
- FAR parameter block pointers) and without expecting DS=0001h
- Some adapter drivers (e.g. the NDIS2 token ring driver NDTOKBAN for
- VINES 5.53) ignore the value in CX and use the value from DX instead
- SeeAlso: AX=0001h/SF=0001h,AX=000Fh/SF=0001h
-
- Format of VINES Socket request block:
- Offset Size Description (Table 2693)
- 00h WORD subfunction number (01h-16h)
- 02h WORD magic number (FEFEh)
- 04h WORD buffer for return code (set to 0 before calling)
- 06h WORD reserved (will be set to client DS)
- 08h WORD reserved (obviously not used; set to 0 before calling)
- 0Ah DWORD far pointer to parameter block
- 0Eh WORD StreetTalk handle
- SeeAlso: #2573 at INT 61/AX=0001h
- --------N-61000FSF0001-----------------------
- INT 61 - Banyan VINES - OPEN SOCKET
- AX = 000Fh subfn 0001h
- CX:BX -> request block (see #2694)
- DX = application's data segment (should be = CX)
- ES = DS
- Return: AX = status
- 0000h successful
- 00A5h resource not available
- Desc: Opens a socket and returns a socket handle
-
- Format of request block:
- Offset Size Description (Table 2694)
- 00h WORD 0001h
- 02h WORD magic number (FEFEh)
- 04h WORD buffer for return code (set to 0 before calling)
- 06h WORD reserved (will be set to client DS)
- 08h WORD reserved (obviously not used; set to 0 before calling)
- 0Ah DWORD far pointer to parameter block (see #2695)
- 0Eh WORD process handle (see AX=000Fh/SF=0008h)
-
- Format of parameter block:
- Offset Size Description (Table 2695)
- 00h WORD reserved
- 02h WORD address family (0003h = VINES)
- 04h WORD socket type (0001h = IPC, 0002h = SPP)
- 06h WORD protocol number (FFFFh = default protocol)
- 08h WORD reserved
- 0Ah WORD local port number (0 = transient, 1..1FFh = well-known port)
- 0Ch DWORD far pointer to socket handle buffer (2 bytes)
- 10h DWORD far pointer to IPC port buffer (16 bytes)
- SeeAlso: #2694
- --------N-61000FSF0002-----------------------
- INT 61 - Banyan VINES - SEND MESSAGE ON A SOCKET
- AX = 000Fh subfn 0002h
- CX:BX -> request block (see #2696)
- DX = application's data segment (should be = CX)
- ES = DS
- Return: AX = status
- 0000h successful
- 00A5h resource not available
- Desc: send data to a socket identified by its socket handle
-
- Format of request block:
- Offset Size Description (Table 2696)
- 00h WORD 0002h
- 02h WORD magic number (FEFEh)
- 04h WORD buffer for return code (set to 0 before calling)
- 06h WORD reserved (will be set to client DS)
- 08h WORD reserved (obviously not used; set to 0 before calling)
- 0Ah DWORD far pointer to parameter block (see #2697)
- 0Eh WORD process handle (see AX=000Fh/SF=0008h)
-
- Format of parameter block:
- Offset Size Description (Table 2697)
- 00h WORD buffer for estimated communication cost in 220 msec ticks
- 02h WORD buffer for return code (set to 0 before calling)
- 04h WORD socket handle
- 06h DWORD far pointer to IPC/SPP message buffer
- 0Ah WORD length of IPC/SPP message buffer
- 0Ch WORD option flags
- bit 0: asynchronous communication
- bit 1: reliable message
- bit 3: end of message
- bit 4: vectored I/O
- 0Eh 16 BYTEs socket address (IPC port of source)
- 1Eh WORD not used (set to 0 before calling)
- 20h WORD SPP connection id (0 for IPC messages)
- 22h WORD request type (1 = data, 2 = connect SPP, 3 = disconnect SPP)
- SeeAlso: #2696
- --------N-61000FSF0004-----------------------
- INT 61 - Banyan VINES - CLOSE SOCKET
- AX = 000Fh subfn 0004h
- CX:BX -> request block (see #2698)
- DX = application's data segment (should be = CX)
- ES = DS
- Return: AX = status
- 0000h successful
- 00A5h resource not available
- Desc: Closes a socket identified by its socket handle
-
- Format of request block:
- Offset Size Description (Table 2698)
- 00h WORD 0004h
- 02h WORD magic number (FEFEh)
- 04h WORD buffer for return code (set to 0 before calling)
- 06h WORD reserved (will be set to client DS)
- 08h WORD reserved (obviously not used; set to 0 before calling)
- 0Ah DWORD far pointer to socket handle (2 bytes)
- 0Eh WORD process handle (see AX=000Fh/SF=0008h)
- --------N-61000FSF0008-----------------------
- INT 61 - Banyan VINES - GET PROCESS HANDLE
- AX = 000Fh subfn 0008h
- CX:BX -> request block (see #2699)
- DX = application's data segment (should be = CX)
- ES = DS
- Return: AX = status
- 0000h successful
- 00A5h resource not available
- Desc: Returns a process handle to be used in other request blocks
- Notes: This function is a prerequisite to all AX=000Fh subfunctions which
- expect a process handle in the request block
- Although subsequent calls from the same application return different
- process handles, there seem to be no restrictions on how many times
- an application may call this function (in fact, the code in the VINES
- toolkit library always calls it before issueing other AX=000Fh calls)
-
- Format of request block:
- Offset Size Description (Table 2699)
- 00h WORD 0008h
- 02h WORD magic number (FEFEh)
- 04h WORD buffer for return code (set to 0 before calling)
- 06h WORD reserved
- 08h WORD reserved (obviously not used; set to 0 before calling)
- 0Ah DWORD process type (1 = transient, 2 = resident; destroyed on exit)
- 0Eh WORD buffer for process handle
- --------N-610010-----------------------------
- INT 61 - Banyan VINES - INTERFACE TO NBNS
- AX = 0010h
- other parameters, if any, unknown
- --------N-6101-------------------------------
- INT 61 - Banyan VINES - CHECK SERVICE
- AH = 01h
- AL = service ID (see #2700)
- Return: AX = status
- 0000h installed
- 0001h not installed
- 0002h invalid ID
- 0003h invalid function
- Note: Only the offset part of the service pointer is checked for a nonzero
- value
- SeeAlso: AH=00h,AH=02h"VINES",AH=03h"VINES"
-
- (Table 2700)
- Values for VINES service ID:
- 01h communications
- 02h primary 3270 emulation
- 03h async terminal emulation
- 04h file deflection
- 05h print service control
- 06h get address of something
- 07h StreetTalk access service
- 08h environment
- 09h NETBIOS client service
- 0Ah secondary 3270 emulation
- 0Bh semaphore service
- 0Ch 3270 emulation active status
- 0Dh T3270 keyboard interrupt simulator
- 0Eh enhanced 3270 service
- 0Fh comm Windows entry point
- 10h interface to NBNS
- --------N-6101--BX0000-----------------------
- INT 61 u - PC/TCP kernel v2.1+ - "net_config" - CONFIGURE RUNNING KERNEL
- AH = 01h
- BX = 0000h
- DH = tag number
- DL = device number
- DS:SI -> buffer to send to kernel
- ES:DI -> integer containing size of buffer
- Return: CF clear if successful
- CF set on error
- AX = error code (see #2568 at INT 61"FTP Software")
- Range: INT 20 to INT E0, selected by configuration
- Notes: there are a large number of tags available; the items returned
- all refer to local kernel configuration, and are not needed in
- normal use.
- this function is not supported by Beame&Whiteside's BWPCTCP v3.0a shim
- SeeAlso: INT 61"FTP Software",INT 61/AH=00h"PC/TCP",INT 61/AH=02h"PC/TCP"
- --------N-6102-------------------------------
- INT 61 - Banyan VINES - GET REVISION NUMBER
- AH = 02h
- DS:DX -> 2-byte buffer for result
- Return: AX = 0000h installed
- DS:DX buffer contains revision number as
- 10000d * major_ver + 100d * minor_ver + patch_revision
- SeeAlso: AH=01h"VINES",AH=04h"VINES",AH=07h"VINES"
- --------N-6102--BX0000-----------------------
- INT 61 u - PC/TCP kernel v2.1+ - "get_kernel_info" - GET MISCELLAN LOCAL INFO
- AH = 02h
- BX = 0000h
- DH = tag number
- DL = device number
- DS:SI -> buffer for result (up to 48 bytes for version <= 2.2)
- ES:DI -> integer containing size of buffer
- Return: CF clear if successful
- Data loaded into specified buffer, and size value altered
- CF set on error
- AX = error code (see #2568 at INT 61"FTP Software")
- Range: INT 20 to INT E0, selected by configuration
- Notes: there are a large number of tags available; the items returned
- all refer to local kernel configuration, and are not needed in
- normal use.
- this function is not supported by Beame&Whiteside's BWPCTCP v3.0a shim
- SeeAlso: INT 61"FTP Software",INT 61/AH=00h"PC/TCP",INT 61/AH=01h"PC/TCP"
- --------N-6103-------------------------------
- INT 61 - Banyan VINES - INSTALL SERVICE HANDLER
- AH = 03h
- AL = service ID (see #2700)
- DS:DX -> new service handler
- Return: AX = 0000h successful
- SeeAlso: AH=00h,AH=01h"VINES",AH=02h"VINES",AH=05h"VINES"
- --------N-6104-------------------------------
- INT 61 - Banyan VINES - CHECK VINES REVISION NUMBER IN RANGE
- AH = 04h
- DS:DX -> 2-byte buffer containing the VINES revision number
- DS:DX buffer contains revision number as
- 10000d * major_ver + 100d * minor_ver + patch_revision
- Return: AX = status
- 0000h valid version
- 0004h out of range
- Note: For Revision 5.53, the valid range is 4.10(0) to 6.19(99)
- SeeAlso: AH=02h"VINES",AH=07h"VINES",AH=08h"VINES"
- --------N-6105-------------------------------
- INT 61 - PC/TCP kernel v2.05+ - "get_addr" - GET INTERNET ADDRESS OF NET DESCR
- AH = 05h
- BX = network descriptor
- Return: CF clear if successful
- DX:AX = Internet address of ND
- CF set on error
- AX = error code (see #2568 at INT 61"FTP Software")
- Range: INT 20 to INT E0, selected by configuration
- Notes: the installation check consists of testing for the signature "TCPTSR"
- three bytes beyond the start of the interrupt handler
- SeeAlso: INT 61"FTP Software",INT 61/AH=00h"PC/TCP",INT 61/AH=16h"PC/TCP"
- SeeAlso: INT 63/AH=25h"BW-TCP"
- --------N-6105-------------------------------
- INT 61 - Banyan VINES - READ PCCONFIG BYTES
- AH = 05h
- CX = number of bytes to copy
- (max. 0175h for VINES 4.00, max. 017Fh for VINES 4.10+)
- SI = offset of area to be copied (see #2701,#2702)
- Return: AX = status
- 0000h successful
- 0004h out of range
- Notes: The PCCONFIG area is located in the code segment of the BANV handler
- To find out which PCCONFIG structure applies, call this function first
- with CX=0006h to get the VINES revision number
- SeeAlso: AH=02h"VINES",AH=04h"VINES",AH=06h"VINES",AH=0Bh"VINES"
-
- Format of PCCONFIG area (VINES 4.00):
- Offset Size Description (Table 2701)
- 00h 6 BYTEs VINES revision (ASCII, zero-padded)
- 06h 2 BYTEs NEWREV-number (ASCII, two digits)
- 08h WORD hardware interrupt level
- 0Ah WORD DMA channel
- 0Ch WORD I/O address
- 0Eh DWORD adapter ROM address (linear)
- 12h DWORD adapter RAM address (linear)
- 16h WORD BANV interrupt
- 18h 32 BYTEs default login group #1
- 38h 32 BYTEs default login group #2
- 58h 32 BYTEs default login group #3
- 78h WORD semaphore locking support flag
- 7Ah WORD extended StreetTalk flag
- 7Ch WORD maximum number of file volumes
- 7Eh WORD NetBIOS flag
- 80h 60 BYTEs default network adapter
- BCh 60 BYTEs default communications driver
- F8h WORD maximum number of SPP connections
- FAh WORD maximum number of open sockets
- FCh WORD communications buffer size (10..60 KB)
- FEh 20 BYTEs location directory on drive Z:
- 112h 33 BYTEs auxiliary configuration area #1 (see #2703)
- 133h 33 BYTEs auxiliary configuration area #2
- 154h 33 BYTEs auxiliary configuration area #3
- SeeAlso: #2702
-
- Format of PCCONFIG area (VINES 4.10+):
- Offset Size Description (Table 2702)
- 00h 6 BYTEs VINES revision (ASCII, zero-padded)
- 06h 2 BYTEs NEWREV-number (ASCII, two digits)
- 08h WORD hardware interrupt level
- 0Ah WORD DMA channel
- 0Ch WORD I/O address
- 0Eh DWORD adapter ROM address (linear)
- 12h DWORD adapter RAM address (linear)
- 16h WORD BANV interrupt
- 18h 32 BYTEs default login group #1
- 38h 32 BYTEs default login group #2
- 58h 32 BYTEs default login group #3
- 78h WORD semaphore locking support flag
- 7Ah WORD extended StreetTalk flag
- 7Ch WORD named pipes support flag
- 7Eh WORD maximum number of file volumes
- 80h WORD NetBIOS flag
- 82h 60 BYTEs default network adapter
- BEh 60 BYTEs default communications driver
- FAh WORD maximum number of SPP connections
- FCh WORD maximum number of open sockets
- FEh WORD communications buffer size (10..60 KB)
- 100h WORD number of mailslots
- 102h WORD maximum number of open files
- 104h WORD maximum number of NetBIOS sessions
- 106h WORD maximum number of NetBIOS commands
- 108h 20 BYTEs location directory on drive Z:
- 11Ch 33 BYTEs auxiliary configuration area #1 (see #2703)
- 13Dh 33 BYTEs auxiliary configuration area #2
- 15Eh 33 BYTEs auxiliary configuration area #3
-
- Format of auxiliary configuration area:
- Offset Size Description (Table 2703)
- 00h 16 BYTEs item name (no zero terminator if length = 16)
- 10h BYTE item value type (1=text, else numeric)
- 11h 16 BYTEs item value (string if type 1, else DWORD)
- SeeAlso: #2701,#2702
- --------N-6106-------------------------------
- INT 61 - PC/TCP kernel v2.05 - "net_info" - GET INTERFACE STATISTICS
- AH = 06h
- BX = network descriptor (must be allocated and open)
- DS:SI -> 38-byte buffer for interface statistics (see #2704)
- Return: CF clear if successful
- buffer filled
- CF set on error
- AX = error code (see #2568)
- Desc: returns the statistics relevant to the particular network interface
- used by the specified network descriptor
- Range: INT 20 to INT E0, selected by configuration
- SeeAlso: INT 61"FTP Software",INT 61/AH=00h"PC/TCP",INT 61/AH=05h"PC/TCP"
-
- Format of PC/TCP interface statistics:
- Offset Size Description (Table 2704)
- 00h WORD interface class (e.g. 802.3)
- 02h WORD type (manufacturer) of interface
- 04h WORD interface number
- 06h DWORD (big-endian) IP address of interface
- 0Ah DWORD subnet mask
- 0Eh WORD 0001h if interface is up
- 10h DWORD total packets received
- 14h DWORD total packets sent
- 18h DWORD receive errors
- 1Ch DWORD send errors
- 20h WORD length of local net address (e.g. 0006h for Ethernet)
- 22h DWORD pointer to local net address
- --------N-6106-------------------------------
- INT 61 - Banyan VINES - GET PCCONFIG BASE ADDRESS
- AH = 06h
- DS:DX -> 4-byte buffer for far pointer to PCCONFIG area
- Return: AX = 0000h successful
- Note: The PCCONFIG area is located in the code segment of the BANV handler
- SeeAlso: AH=05h"VINES",AH=0Bh"VINES"
- --------N-6107-------------------------------
- INT 61 - PC/TCP kernel v2.05+ - "net_globalize" - MAKE NET DESCRIPTOR GLOBAL
- AH = 07h
- BX = local network descriptor
- Return: CF clear if successful
- AX = global network descriptor
- CF set on error
- AX = error code (see #2568)
- Notes: the new network descriptor can be accessed from all processes and is
- independent of DOS
- this function is not supported by Beame&Whiteside's BWPCTCP v3.0a shim
- SeeAlso: INT 61"FTP Software",INT 61/AH=00h"PC/TCP",INT 61/AH=08h"PC/TCP"
- SeeAlso: INT 61/AH=29h
- --------N-6107-------------------------------
- INT 61 - Banyan VINES - GET VINES REVISION NUMBER (LONG)
- AH = 07h
- DS:DX -> 4-byte buffer for result
- Return: AX = 0000h successful
- DS:DX buffer contains revision number as
- 10000d * major_ver + 100d * minor_ver + patch_revision
- SeeAlso: AH=02h"VINES",AH=04h"VINES",AH=08h"VINES"
- --------b-6107-------------------------------
- INT 61 - Atari Portfolio - FORMAT CREDIT CARD MEMORY
- AH = 07h
- AL = drive number (00h = A:,01h = B:)
- Return: CF clear if successful
- CF set on error
- AH = error code (see #0144 at INT 13/AH=01h)
- Note: do not use this function to format the internal disk (drive number 02h)
- SeeAlso: AH=00h"Portfolio",AH=08h"Portfolio",AH=09h"Portfolio"
- --------N-6108-------------------------------
- INT 61 - PC/TCP kernel v2.05+ - "net_release" - CLOSE A NETWORK DESCRIPTOR
- AH = 08h
- BX = network descriptor
- Return: CF clear if successful
- AX = 0000h (BWPCTCP shim)
- CF set on error
- AX = error code (see #2568)
- Range: INT 20 to INT E0, selected by configuration
- Note: the descriptor will be closed and resources released. If a stream
- descriptor, the protocol (FIN etc) is completed unless the
- non-blocking option has been set.
- SeeAlso: INT 61"FTP Software",INT 61/AH=00h"PC/TCP",INT 61/AH=09h"PC/TCP"
- SeeAlso: INT 63/AH=0Eh"BW-TCP"
- --------N-6108-------------------------------
- INT 61 - Banyan VINES - CHECK VINES REVISION NUMBER IN RANGE (LONG)
- AH = 08h
- DS:DX -> 4-byte buffer containing the VINES revision number
- DS:DX buffer contains revision number as
- 10000d * major_ver + 100d * minor_ver + patch_revision
- Return: AX = status
- 0000h valid version
- 0004h out of range
- Note: For Revision 5.53, the valid range is 4.10(0) to 6.19(99)
- SeeAlso: AH=04h"VINES",AH=07h"VINES"
- --------b-6108-------------------------------
- INT 61 - Atari Portfolio - GET SIZE OF INTERNAL DISK
- AH = 08h
- Return: AX = segment address of RAMdisk
- BX = size in KB
- SeeAlso: AH=00h"Portfolio",AH=07h"Portfolio",AH=09h"Portfolio"
- --------N-6109-------------------------------
- INT 61 - PC/TCP kernel v2.05+ - "net_releaseall" - CLOSE ALL NON-GLOBAL DESCRS
- AH = 09h
- Return: CF clear
- Range: INT 20 to INT E0, selected by configuration
- Notes: this call performs function 08h on every non-global network descriptor.
- Global descriptors must be released individually.
- SeeAlso: INT 61"FTP Software",INT 61/AH=00h"PC/TCP",INT 61/AH=08h"PC/TCP"
- SeeAlso: INT 63/AH=0Eh"BW-TCP"
- --------N-6109-------------------------------
- INT 61 - Banyan VINES - GET VALUE OF AN OS/2 BACKEND VARIABLE
- AH = 09h
- other parameters, if any, unknown
- SeeAlso: AH=0Ah"VINES"
- --------b-6109-------------------------------
- INT 61 - Atari Portfolio - FORMAT INTERNAL DISK
- AH = 09h
- BX = desired size of disk in KB
- Return: CF clear if successful
- CF set on error
- BX = maximum possible size in KB
- Desc: resize and erase the internal RAMdisk, then reboot the system
- SeeAlso: AH=00h"Portfolio",AH=07h"Portfolio",AH=08h"Portfolio"
- SeeAlso: AH=0Bh"Portfolio"
- --------N-610A-------------------------------
- INT 61 - PC/TCP kernel v2.05 - "net_send" - ???
- AH = 0Ah
- ???
- Return: ???
- Notes: this function is described as "unused" in the v2.05 and v2.2
- documentation
- this function is not supported by Beame&Whiteside's BWPCTCP v3.0a shim
- SeeAlso: AH=0Bh
- --------N-610A-------------------------------
- INT 61 - Banyan VINES - SET VALUE OF AN OS/2 BACKEND VARIABLE
- AH = 0Ah
- other parameters, if any, unknown
- SeeAlso: AH=09h"VINES"
- --------N-610B-------------------------------
- INT 61 - PC/TCP kernel v2.05 - "net_sendto" - ???
- AH = 0Bh
- ???
- Return: ???
- Range: INT 20 to INT E0, selected by configuration
- Notes: this function is described as "unused" in the v2.05 and v2.2
- documentation
- this function is not supported by Beame&Whiteside's BWPCTCP v3.0a shim
- SeeAlso: AH=0Ah
- --------N-610B-------------------------------
- INT 61 - Banyan VINES - SET PCCONFIG IN BACKEND
- AH = 0Bh
- other parameters, if any, unknown
- SeeAlso: AH=05h"VINES",AH=06h"VINES"
- --------b-610B-------------------------------
- INT 61 - Atari Portfolio - DETERMINE CCM VALIDITY
- AH = 0Bh
- AL = drive number (00h = A:,01h = B:)
- Return: CF clear if successful (card present and correct)
- CF set on error
- AH = error code (see #0144 at INT 13/AH=01h)
- SeeAlso: AH=00h"Portfolio",AH=07h"Portfolio",AH=0Dh"Portfolio"
- --------N-610C-------------------------------
- INT 61 u - PC/TCP kernel v2.05+ - "net_stat" - GET CONNECTION STATISTICS
- AH = 0Ch
- BX = network descriptor or one of the following:
- FFFCh for kernel ICMP statistics (see #2708)
- FFFDh for kernel UDP statistics (see #2707)
- FFFEh for kernel IP statistics (see #2706)
- FFFFh for kernel TCP statistics (see #2705)
- DS:DX -> 64-byte buffer
- Return: CF clear if successful
- buffer filled
- CF set on error
- AX = error code (see #2568)
- Notes: the fields filled in for a network descriptor depend on the protocol
- family used by that descriptor's connection
- this function is not supported by Beame&Whiteside's BWPCTCP v3.0a shim
- SeeAlso: INT 61"FTP Software",INT 61/AH=00h"PC/TCP"
-
- Format of PC/TCP kernel TCP statistics:
- Offset Size Description (Table 2705)
- 00h 16 BYTEs unused
- 10h DWORD bytes sent
- 14h DWORD bytes received
- 18h 8 BYTEs unused
- 20h DWORD packets sent
- 24h DWORD packets received
- 28h DWORD bad checksums
- 2Ch DWORD count of window ignored by remote
- 30h DWORD timeouts
- 34h DWORD resets
- 38h DWORD duplicate packets
- 3Ch DWORD retransmits
- SeeAlso: #2706,#2707,#2708
-
- Format of PC/TCP kernel IP statistics:
- Offset Size Description (Table 2706)
- 00h 8 BYTEs unused
- 08h DWORD invalid IP header length errors
- 0Ch DWORD protocol errors (unwanted packets)
- 10h DWORD duplicate fragments received
- 14h DWORD bad fragments received
- 18h DWORD security errors
- 1Ch DWORD count of bad IP addresses received
- 20h DWORD packets sent
- 24h DWORD packets received
- 28h DWORD bad checksums received
- 2Ch DWORD total IP protocol errors
- 30h DWORD fragmentation errors
- 34h DWORD IP packets discarded + bad security + bad fragments
- 38h DWORD fragments received
- 3Ch 4 BYTEs unused
- SeeAlso: #2705,#2707,#2708
-
- Format of PC/TCP kernel UDP statistics:
- Offset Size Description (Table 2707)
- 00h 28 BYTEs unused
- 1Ch DWORD packets dropped for lack of buffers
- 20h DWORD packets sent
- 24h DWORD packets received
- 28h DWORD bad checksums
- 2Ch DWORD port not listening errors
- 30h 4 BYTEs unused
- 34h DWORD truncated receives
- 38h 8 BYTEs unused
- SeeAlso: #2705,#2706,#2708
-
- Format of PC/TCP kernel ICMP statistics:
- Offset Size Description (Table 2708)
- 00h DWORD "TimeEx" sent
- 04h DWORD "TimeEx" received
- 08h DWORD "ParamProb" sent
- 0Ch DWORD "ParamProb" received
- 10h DWORD redirects received
- 14h DWORD source quenches received
- 18h DWORD ICMP Echo Requests ("ping") sent
- 1Ch DWORD ICMP Echo Requests received
- 20h DWORD packets sent
- 24h DWORD packets received
- 28h DWORD bad packets received
- 2Ch DWORD "DestUn" received
- 30h DWORD packet send errors
- 34h DWORD "DestUn" sent
- 38h DWORD ICMP Echo replies received
- 3Ch DWORD ICMP Echo replies sent
- SeeAlso: #2705,#2706,#2707
- --------N-610D-------------------------------
- INT 61 - PC/TCP kernel v2.05+ - "is_netnd" - CHECK IF NETWORK DESCRIPTOR VALID
- AH = 0Dh
- BX = possible network descriptor
- Return: CF clear if valid
- CF set on error
- AX = error code (see #2568 at INT 61"FTP Software")
- SeeAlso: INT 61"FTP Software",INT 61/AH=00h"PC/TCP",INT 61/AH=08h"PC/TCP"
- SeeAlso: INT 61/AH=22h
- --------b-610D-------------------------------
- INT 61 - Atari Portfolio - GET SCREEN SIZE
- AH = 0Dh
- Return: AX = physical screen size (AH=rows, AL=columns)
- DX = logical screen size (DH=rows, DL=columns)
- SeeAlso: AH=00h"Portfolio",AH=0Bh"Portfolio",AH=0Eh"Portfolio"
- --------N-610E-------------------------------
- INT 61 - PC/TCP kernel v2.05+ - "net_select" - DETECT READINESS OF NETWORK
- AH = 0Eh
- BX = maximum value of network descriptor for which to return info
- DS:DX -> 32-bit (max) array of bit flags for read readiness
- ES:DI -> 32-bit (max) array of bit flags for write readiness
- Return: CF clear
- Range: INT 20 to INT E0, selected by configuration
- Notes: bits in the DS:DX buffer are set if the corresponding network
- descriptor may be read without blocking; bits in the ES:DI buffer
- are set if the corresponding network descriptor may be written
- without blocking. This implies that the network descriptor has
- opened correctly and the protocol initialized.
- the installation check consists of testing for the signature "TCPTSR"
- three bytes beyond the start of the interrupt handler
- SeeAlso: INT 61"FTP Software",INT 61/AH=00h"PC/TCP"
- --------b-610E-------------------------------
- INT 61 - Atari Portfolio - GET/SET SCREEN MODE
- AH = 0Eh
- AL = function
- 00h get mode
- 01h set mode
- DL = new mode (see #2709)
- Return: DL = current/old mode
- Note: if changing the mode places the cursor position or virtual screen
- origin outside the displayed area, the screen origin will be reset
- to (0,0), the screen cleared, and the cursor position set to (0,0)
- SeeAlso: AH=00h"Portfolio",AH=0Dh"Portfolio",AH=0Fh"Portfolio",INT 10/AH=00h
-
- Bitfields for Atari Portfolio screen mode:
- Bit(s) Description (Table 2709)
- 0 40x8 mode instead of 80x25
- 1 tracked mode
- 7 graphics
- Note: the above bits are mutually exclusive
- --------N-610F-------------------------------
- INT 61 - PC/TCP kernel v2.05+ - "get_netversion" - GET SOFTWARE VERSION
- AH = 0Fh
- Return: CF clear
- AX = version (AH = major, AL = minor)
- BX = patch level
- Notes: patch levels are no longer used starting with version 2.10; instead,
- the minor version level is incremented.
- Beame&Whiteside's BWPCTCP v3.0a shim reports version 2.05, but does not
- set BX
- SeeAlso: INT 61"FTP Software",INT 61/AH=00h"PC/TCP"
- --------b-610F-------------------------------
- INT 61 - Atari Portfolio - GET/SET CURSOR MODE
- AH = 0Fh
- AL = function
- 00h get mode
- 01h set mode
- BL = new cursor mode
- 00h cursor off
- 01h underline
- 02h block
- 02h force mode (set size to reflect NumLock state)
- Return: BL = current/old cursor mode
- SeeAlso: AH=00h"Portfolio",AH=0Eh"Portfolio",AH=10h"Portfolio",INT 10/AH=01h
- --------N-6110-------------------------------
- INT 61 - PC/TCP kernel v2.05+ - "net_shutdown" - UNINSTALL
- AH = 10h
- Return: CF clear if successful
- CF set on error
- AX = error code (see #2568 at INT 61"FTP Software")
- Range: INT 20 to INT E0, selected by configuration
- Note: this function is not supported by Beame&Whiteside's BWPCTCP v3.0a shim
- SeeAlso: INT 61"FTP Software",INT 61/AH=00h"PC/TCP"
- --------b-6110-------------------------------
- INT 61 - Atari Portfolio - GET/SET VIRTUAL SCREEN POSITION
- AH = 10h
- AL = function
- 00h get position
- Return: DH,DL = current row,column
- 01h set position
- DH = row
- DL = column
- Desc: get or specify the upper-left corner of the 40x8 window into the
- logical screen
- SeeAlso: AH=00h"Portfolio",AH=0Eh"Portfolio",AH=0Fh"Portfolio"
- SeeAlso: AH=11h"Portfolio"
- --------N-6111-------------------------------
- INT 61 - PC/TCP kernel v2.05+ - "disable_async" - DISABLE ASYNCHRONOUS HANDLERS
- AH = 11h
- Return: CF clear
- AX = previous state
- 0000h async calls were already disabled
- else async calls were enabled
- SeeAlso: INT 61"FTP Software",INT 61/AH=12h
- --------b-6111-------------------------------
- INT 61 - Atari Portfolio - MOVE VIRTUAL SCREEN ORIGIN
- AH = 11h
- AL = number of lines to move
- DL = direction of move (1=up, 2=down, 3=left, 4=right)
- SeeAlso: AH=00h"Portfolio",AH=10h"Portfolio",AH=12h"Portfolio"
- --------N-6112-------------------------------
- INT 61 - PC/TCP kernel v2.05+ - "enable_async" - ENABLE ASYNCHRONOUS HANDLERS
- AH = 12h
- Return: CF clear
- AX = previous state
- 0000h async calls were disabled
- else async calls were already enabled
- SeeAlso: INT 61"FTP Software",INT 61/AH=11h
- --------b-6112-------------------------------
- INT 61 - Atari Portfolio - SCREEN REFRESH
- AH = 12h
- Return: nothing
- Desc: copy contents of video RAM to LCD controller
- SeeAlso: AH=10h"Portfolio",AH=11h"Portfolio",AH=15h"Portfolio"
- --------N-6113-------------------------------
- INT 61 - PC/TCP kernel v2.05 - "net_connect" - OPEN A NETWORK CONNECTION
- AH = 13h
- BX = network descriptor (FFFFh for automatic net_getdesc)
- DX = protocol (see #2710)
- DS:SI -> buffer for "addr" structure (see #2711)
- Return: CF clear if successful
- AX = network descriptor used or allocated
- CF set on error
- AX = error code (see #2568 at INT 61"FTP Software")
- Notes: resets the connection with AH=19h in various cases
- will wait for protocol on stream connections unless non-blocking was
- set with AH=20h
- SeeAlso: INT 61"FTP Software",INT 61/AH=00h"PC/TCP",INT 61/AH=18h,INT 61/AH=23h
- SeeAlso: INT 63/AH=14h"BW-TCP"
-
- (Table 2710)
- Values for PC/TCP protocol:
- 0001h raw net (undocumented)
- 0002h raw IP
- 0003h datagram (UDP)
- 0004h stream (TCP)
- 0005h raw ICMP
-
- Format of structure "addr":
- Offset Size Description (Table 2711)
- 00h DWORD Internet address (network order)
- 04h WORD remote socket number (network order)
- 06h WORD local socket number (network order) 0000h means "you choose"
- 08h BYTE protocol (see #2710)
- --------N-6114-------------------------------
- INT 61 Ou - PC/TCP kernel v2.05 - "net_recv" - NO LONGER SUPPORTED
- AH = 14h
- BX = network descriptor
- Return: CF set
- AX = 0018h (see #2568 at INT 61"FTP Software")
- Notes: displays error message "Illegal system call! Please upgrade your
- PCserver software" to standard output
- this function is not supported by Beame&Whiteside's BWPCTCP v3.0a shim
- SeeAlso: INT 61"FTP Software",INT 61/AH=00h"PC/TCP",INT 61/AH=0Ah,INT 61/AH=15h
- --------N-6115-------------------------------
- INT 61 - PC/TCP kernel v2.05 - "net_recvfrom" - ???
- AH = 15h
- ???
- Return: ???
- Notes: this function is described as "unused" in the v2.2 documentation
- this function is not supported by Beame&Whiteside's BWPCTCP v3.0a shim
- SeeAlso: INT 61/AH=0Bh,INT 61/AH=14h
- --------b-6115-------------------------------
- INT 61 - Atari Portfolio - SOUND GENERATION
- AH = 15h
- AL = function
- 00h key click
- 01h beep
- 02h alarm
- Return: nothing
- SeeAlso: AH=00h"Portfolio",AH=12h"Portfolio",AH=16h"Portfolio"
- --------N-6116-------------------------------
- INT 61 - PC/TCP kernel v2.05+ - "net_peer" - GET DATA ON REMOTE PEER
- AH = 16h
- BX = network descriptor
- DS:DX -> 9-byte buffer for "addr" structure (see #2711)
- Return: CF clear if successful
- buffer filled
- CF set on error
- AX = error code (see #2568 at INT 61"FTP Software")
- Range: INT 20 to INT E0, selected by configuration
- SeeAlso: INT 61"FTP Software",INT 61/AH=00h"PC/TCP"
- --------b-6116-------------------------------
- INT 61 - Atari Portfolio - MELODY TONE GENERATOR
- AH = 16h
- CX = length of tones in 1/100 sec
- DL = tone code (see #2712)
- SeeAlso: AH=15h"Portfolio",AH=17h"Portfolio"
-
- (Table 2712)
- Values for Atari Portfolio tone code:
- 04h A6#1864.7 Hz
- 05h B6 1975.5 Hz
- 06h D7 2348.3 Hz
- 07h D7# 2489.0 Hz
- 0Eh F6# 1480.0 Hz
- 25h C7 2093.0 Hz
- 29h D6 1174.7 Hz
- 2Ch G6# 1661.2 Hz
- 2Fh C7# 2217.5 Hz
- 30h D5# 622.3 Hz
- 31h E5 659.3 Hz
- 32h F5 698.5 Hz
- 33h F5# 740.0 Hz
- 34h G5 784.0 Hz
- 35h G5# 830.6 Hz
- 36h A5 880.6 Hz
- 37h A5# 932.3 Hz
- 38h B5 987.8 Hz
- 39h C6 1046.5 Hz
- 3Ah C6# 1108.7 Hz
- 3Bh D6# 1244.5 Hz
- 3Ch E6 1318.5 Hz
- 3Dh F6 1396.9 Hz
- 3Eh G6 1568.9 Hz
- 3Fh A6 1760.0 Hz
- --------N-6117-------------------------------
- INT 61 - PC/TCP kernel v2.05+ - "net_reconfig" - RE-READ KERNEL CONFIGURATION
- AH = 17h
- Return: CF clear if successful
- CF set on error
- AX = error code (see #2568 at INT 61"FTP Software")
- Notes: this routine is deprecated in v2.1+ and will eventually be withdrawn;
- in v2.1+, this function calls AH=01h which should be used instead
- this function is not supported by Beame&Whiteside's BWPCTCP v3.0a shim
- SeeAlso: INT 61"FTP Software",INT 61/AH=00h"PC/TCP",INT 61/AH=01h"PC/TCP"
- --------b-6117-------------------------------
- INT 61 - Atari Portfolio - DIAL NUMBER
- AH = 17h
- DS:SI -> ASCII string containing number to dial
- CX = length of string
- Note: valid characters for string are "0123456789ABCD*#"
- SeeAlso: AH=00h"Portfolio",AH=15h"Portfolio",AH=16h"Portfolio"
- SeeAlso: AH=18h"Portfolio"
- --------N-6118-------------------------------
- INT 61 - PC/TCP kernel v2.05+ - "net_eof" - CLOSE TRANSMIT SIDE OF CONNECTION
- AH = 18h
- BX = network descriptor
- Return: CF clear if successful
- CF set on error
- AX = error code (see #2568 at INT 61"FTP Software")
- Note: a TCP "FIN" command is sent and no further data may be transmitted,
- although the connection remains open
- SeeAlso: INT 61"FTP Software",INT 61/AH=00h"PC/TCP",INT 61/AH=13h"PC/TCP"
- SeeAlso: INT 63/AH=0Eh"BW-TCP"
- --------b-6118-------------------------------
- INT 61 - Atari Portfolio - MUTE STATES
- AH = 18h
- AL = function
- 00h get mute state
- 01h set mute state
- 02h get key click state
- 03h set key click state
- 04h get beep state
- 05h set beep state
- 06h get alarm state
- 07h set alarm state
- 08h get DTMF duration
- 09h set DTMF duration
- DL = new state ("set" functions) (00h off [muted], 01h on)
- Return: DL = current state ("get" functions) (00h off [muted], 01h on)
- SeeAlso: AH=15h"Portfolio",AH=16h"Portfolio",AH=17h"Portfolio"
- SeeAlso: AH=19h"Portfolio"
- --------N-6119-------------------------------
- INT 61 - PC/TCP kernel v2.05+ - "net_abort" - RESET A NETWORK CONNECTION
- AH = 19h
- BX = network descriptor
- Return: CF clear if successful
- CF set on error
- AX = error code (see #2568 at INT 61"FTP Software")
- Desc: immediately destroys the specified connection
- Note: send a TCP "RST" command if a stream connection is open
- SeeAlso: INT 61"FTP Software",INT 61/AH=00h"PC/TCP",INT 61/AH=24h
- --------b-6119-------------------------------
- INT 61 - Atari Portfolio - GET SERIAL PORT PARAMETERS
- AH = 19h
- DX = serial port number
- Return: AH = status
- 00h successful
- AL = composite parameters (see #0204 at INT 14/AH=00h"SERIAL")
- other error
- SeeAlso: AH=00h"Portfolio",AH=15h"Portfolio",AH=1Ah"Portfolio"
- --------N-611A-------------------------------
- INT 61 - PC/TCP kernel v2.05+ - "net_write" - WRITE TO THE NETWORK
- AH = 1Ah
- BX = network descriptor
- CX = number of bytes to transmit (0000h allowed)
- DX = send options (see #2713)
- DS:SI -> data to be written
- Return: CF clear if successful
- AX = number of bytes actually written
- DX = ???
- CF set on error
- AX = error code (see #2568 at INT 61"FTP Software")
- Range: INT 20h to INT E0h, selected by configuration
- Notes: the installation check consists of testing for the signature "TCPTSR"
- three bytes beyond the start of the interrupt handler
- SeeAlso: INT 61"FTP Software",INT 61/AH=00h"PC/TCP",INT 61/AH=1Bh,INT 61/AH=1Ch
- SeeAlso: INT 63/AH=19h"BW-TCP",INT 63/AH=1Bh"BW-TCP"
-
- Bitfields for PC/TCP send options:
- Bit(s) Description (Table 2713)
- 0 signal "URG"ent data
- 3 attempt rerouting on non-stream calls if first attempt fails
- 4 send data with PUSH flag (no override of Nagle)
- 5 fail rather than truncating datagram
- 6 fail rather than blocking
- 7 broadcast packet
- --------b-611A-------------------------------
- INT 61 - Atari Portfolio - GET PERIPHERAL ID BYTE
- AH = 1Ah
- Return: AH = peripheral ID byte
- AL = 00h if no peripheral installed
- Desc: get the ID code for the current terminating peripheral
- SeeAlso: AH=00h"Portfolio",AH=18h"Portfolio",AH=1Bh"Portfolio"
- --------N-611B-------------------------------
- INT 61 - PC/TCP kernel v2.05+ - "net_read" - READ FROM THE NETWORK
- AH = 1Bh
- BX = network descriptor
- CX = maximum number of bytes to read
- DX = receive options (see #2714)
- DS:SI -> buffer for data
- ES:DI -> "addr" structure (see #2711) for remote from which to read
- 0000h:0000h for any
- Return: CF clear if successful
- AX = number of bytes actually read
- DX = ???
- CF set on error
- AX = error code (see #2568 at INT 61"FTP Software")
- SeeAlso: INT 61"FTP Software",INT 61/AH=00h"PC/TCP",INT 61/AH=1Ah,INT 61/AH=1Dh
-
- Bitfields for PC/TCP receive options:
- Bit(s) Description (Table 2714)
- 1 do not remove data from queue, just copy it
- 2 do not copy data, just remove it from queue
- 5 fail if datagram would be truncated
- 6 do not block, return error if no data available
- Note: special case for UDP: if both 1 and 2 set, return number of datagrams
- --------b-611B-------------------------------
- INT 61 - Atari Portfolio - SET PERIPHERAL ID BYTE
- AH = 1Bh
- AL = which peripheral to set
- 00h serial
- 01h parallel
- DL = peripheral ID
- Return: nothing
- Desc: specify that a peripheral is compatible with the BIOS serial or
- parallel services
- SeeAlso: AH=1Ah"Portfolio",AH=1Ch"Portfolio"
- --------N-611C-------------------------------
- INT 61 - PC/TCP kernel v2.05+ - "net_writeto" - WRITE A DATAGRAM
- AH = 1Ch
- BX = network descriptor
- CX = number of bytes to transmit (0000h allowed)
- DX = send options (see #2713)
- DS:SI -> data to be written
- ES:DI -> "addr" structure (see #2711)
- Return: CF clear if successful
- AX = number of bytes actually written
- DX = ???
- CF set on error
- AX = error code (see #2568 at INT 61"FTP Software")
- Note: this function differs from AH=1Ah in that the address and socket
- numbers can be overridden
- SeeAlso: INT 61"FTP Software",INT 61/AH=00h"PC/TCP",INT 61/AH=1Ah,INT 61/AH=1Dh
- SeeAlso: INT 63/AH=21h"BW-TCP"
- --------b-611C-------------------------------
- INT 61 - Atari Portfolio - PRESET/GET PERIPHERAL DATA
- AH = 1Ch
- AL = function
- 00h preset data values
- BL = data value
- DX = I/O address
- 01h get data values
- BH = table entry number (04h-09h)
- Return: if function 01h
- BL = data value
- DX = I/O address
- Desc: preset peripheral I/O data in a table mapping I/O addresses to data
- values; function 00h additionally outputs the data value to the
- I/O port
- SeeAlso: AH=1Ah"Portfolio",AH=1Bh"Portfolio",AH=1Eh"Portfolio"
- --------N-611D-------------------------------
- INT 61 - PC/TCP kernel v2.05+ - "net_readfrom" - READ A DATAGRAM
- AH = 1Dh
- BX = network descriptor
- CX = maximum number of bytes to read
- DX = receive options (see #2713)
- DS:SI -> buffer for received data
- ES:DI -> 9-byte buffer containing "addr" structure (see #2711)
- Return: CF clear if successful
- AX = number of bytes read
- DX = ???
- CF set on error
- AX = error code (see #2568 at INT 61"FTP Software")
- Notes: this function can read from any host or a designated host depending
- on settings in the "addr" structure
- only for use with datagram or Raw descriptors
- SeeAlso: INT 61"FTP Software",INT 61/AH=00h"PC/TCP",INT 61/AH=1Bh,INT 61/AH=1Ch
- --------N-611E-------------------------------
- INT 61 - PC/TCP kernel v2.05+ - "net_flush" - FLUSH PENDING DATA
- AH = 1Eh
- BX = network descriptor
- Return: CF clear if successful
- CF set on error
- AX = error code (see #2568 at INT 61"FTP Software")
- Range: INT 20 to INT E0, selected by configuration
- Notes: bufferred data is transmitted immediately, overriding Nagle's algorithm
- if necessary
- this function is not supported by Beame&Whiteside's BWPCTCP v3.0a shim
- SeeAlso: INT 61"FTP Software",INT 61/AH=00h"PC/TCP"
- --------b-611E-------------------------------
- INT 61 - Atari Portfolio - GET/SET CLOCK TICK SPEED
- AH = 1Eh
- AL = function
- 00h get speed
- 01h set speed
- BX = clock tick speed
- 0000h tick every 128 seconds
- 0001h tick every second
- Return: if function 00h
- BX = clock tick speed
- Note: the faster tick speed also uses more power
- SeeAlso: AH=00h"Portfolio",AH=1Ch"Portfolio",AH=1Fh"Portfolio"
- --------N-611F-------------------------------
- INT 61 - PC/TCP kernel v2.05+ - "net_asynch" - SET UP ASYNCHRONOUS CALL-BACK
- AH = 1Fh
- BX = network descriptor
- CX = event type (see #2715)
- DS:SI -> event handler routine (see #2716)
- ES:DI = 32-bit hint passed to handler
- Return: CF clear if successful
- DS:DX -> previous handler
- CF set on error
- AX = error code (see #2568 at INT 61"FTP Software")
- Note: ICMP messages do not trigger events on stream connections
- SeeAlso: INT 61"FTP Software",INT 61/AH=00h"PC/TCP"
-
- (Table 2715)
- Values for PC/TCP event type:
- 00h alarm
- 01h open (successfully opened stream connection)
- 02h receive (data available)
- 03h transmit (ACK received on stream connection)
- 04h transmit flush???
- 05h foreign close (remote host closed data connection)
- 06h close (local host closed connection and protocol is complete)
- 07h error (error code passed to handler as arg)
-
- (Table 2716)
- Values PC/TCP user event handler is called with:
- BX = network descriptor
- CX = event type (see #2715)
- DS:DX -> arg
- ES:DI = 32-bit hint value
- STACK: small stack, possibly the DOS stack
- --------b-611F-------------------------------
- INT 61 - Atari Portfolio - GET KEY/NMI-INVOKED SCREEN REFRESH
- AH = 1Fh
- AL = function
- 00h get state
- 01h set state
- DH = new refresh-on-NMI state
- (00h disabled, 01h enabled, bit 7 set = don't change)
- DL = new refresh-on-key state
- Return: DH,DL = current/old states
- SeeAlso: AH=00h"Portfolio",AH=1Eh"Portfolio",AH=20h"Portfolio"
- --------N-6120-------------------------------
- INT 61 - PC/TCP kernel v2.05+ - "set_option" - SET AN OPTION ON A DESCRIPTOR
- AH = 20h
- BX = network descriptor
- CX = length of buffer (usually 04h)
- DS:DX -> buffer containing option
- SI = (ignored by v2.2-)
- DI = option to set (see #2717)
- Return: CF clear if successful
- CF set on error
- AX = error code (see #2568 at INT 61"FTP Software")
- Note: Beame&Whiteside's BWPCTCP shim only supports options 01h and 0Bh; all
- others return CF clear
- SeeAlso: INT 61"FTP Software",INT 61/AH=00h"PC/TCP",INT 61/AH=21h
-
- (Table 2717)
- Values for PC/TCP option to get or set:
- 01h set non-blocking mode if non-zero
- 02h timeout of call in milliseconds
- 03h user-defined 4-byte magic cookie (not used by kernel)
- 04h TCP window or UDP buffer count (WORD, unsigned)
- 06h do TCP keep-alives if non-zero
- 09h (v2.1+) set IP precedence
- 0Ah (v2.1+) set IP type of service
- 0Bh use a privileged port if port = 0
- 0Ch turn off TCP PUSH bit and don't flush buffer every write (see AH=1Ah)
- Note: use "C" true or false values for boolean options
- --------b-6120-------------------------------
- INT 61 - Atari Portfolio - GET/SET INT 09 REVECTORING
- AH = 20h
- AL = function
- 00h get INT 09 revectoring state
- 01h set state
- DL = new state (00h disable, 01h enable)
- Return: if function 00h
- DL = new state (00h disabled, 01h enabled)
- Desc: specify whether INT 09 is automatically revectored to the BIOS,
- preventing applications from using their own INT 09 handler on the
- incompatible keyboard hardware
- SeeAlso: AH=1Eh"Portfolio",AH=1Fh"Portfolio",AH=24h"Portfolio"
- --------N-6121-------------------------------
- INT 61 - PC/TCP kernel v2.05+ - "get_option" - GET OPTIONS APPLIED TO NET DESCR
- AH = 21h
- BX = network descriptor
- CX = length of buffer
- DS:DX -> buffer for return values
- SI = 0004h (ignored by v2.2-)
- DI = option (see #2717)
- Return: CF clear if successful
- DS:DX -> value (usually 32 bits) returned by selected option
- CF set on error
- AX = error code (see #2568 at INT 61"FTP Software")
- Note: this function is not supported by Beame&Whiteside's BWPCTCP v3.0a shim
- SeeAlso: INT 61"FTP Software",INT 61/AH=00h"PC/TCP",INT 61/AH=20h
- --------N-6122-------------------------------
- INT 61 u - PC/TCP kernel v2.05+ - "net_getdesc" - ALLOCATE NETWORK DESCRIPTOR
- AH = 22h
- Return: CF clear if successful
- AX = network descriptor
- CF set on error
- AX = error code (see #2568 at INT 61"FTP Software")
- Note: the descriptor will be an integer in the range 00h-1Fh, and a DOS call
- is made to allocate this as a file descriptor. Hence a number may
- not refer to a PC/TCP network descriptor and a DOS file handle
- simultaneously.
- SeeAlso: INT 61"FTP Software",INT 61/AH=00h"PC/TCP",INT 61/AH=13h,INT 61/AH=29h
- --------N-6123-------------------------------
- INT 61 - PC/TCP kernel v2.05+ - "net_listen" - LISTEN FOR INCOMING CONNECTIONS
- AH = 23h
- BX = network descriptor or FFFFh to allocate descriptor
- DX = type of service
- DS:SI -> "addr" structure (see #2711)
- Return: CF clear if successful
- AX = network descriptor
- CF set on error
- AX = error code (see #2568 at INT 61"FTP Software")
- Notes: type of service and "addr" structure are as for AH=13h
- any of the address structure can be zero; normally local socket number
- is filled in prior to call
- SeeAlso: INT 61"FTP Software",INT 61/AH=00h"PC/TCP",INT 61/AH=13h
- SeeAlso: INT 63/AH=12h"BW-TCP"
- --------N-6124-------------------------------
- INT 61 - PC/TCP kernel v2.05+ - "net_abortall" - RESET ALL NETWORK CONNECTIONS
- AH = 24h
- Return: always successful
- Note: performs "net_abort" (AH=19h) on all open non-global descriptors
- SeeAlso: INT 61"FTP Software",INT 61/AH=00h"PC/TCP",INT 61/AH=19h
- --------b-6124-------------------------------
- INT 61 - Atari Portfolio - GET/SET ROM/CCM SPACE STATE
- AH = 24h
- AL = function
- 00h get state
- 01h set state
- DL = new ROM state (see #2718)
- DH = new CCM state (see #2719)
- Return: CF clear if successful
- DL = current/old ROM state
- DH = current/old CCM state
- CF set on error (invalid option or other error)
- Desc: control whether memory cards or an extension ROM are visible in the
- range 000C0000h to 000DFFFFh
- SeeAlso: AH=00h"Portfolio",AH=20h"Portfolio",AH=26h"Portfolio"
-
- (Table 2718)
- Values for Atari Portfolio ROM space state:
- 00h normal application ROM
- 01h CCM drive A:
- 02h CCM drive B:
- 03h expansion ROM
- SeeAlso: #2719
-
- (Table 2719)
- Values for Atari Portfolio CCM space state:
- 00h CCM drives disabled
- 01h CCM drive A: permanently enabled
- 02h CCM drive B: permanently enabled
- SeeAlso: #2718
- --------N-6125-------------------------------
- INT 61 - PC/TCP kernel v2.05+ - "ad_res_name" - GET HOST NAME GIVEN ADDRESS
- AH = 25h
- DX,BX = IP address in network order
- CX = length of buffer for name
- DS:SI -> buffer for host name
- Return: CF clear if successful
- buffer filled with ASCIZ host name
- CF set on error
- AX = error code (see #2568 at INT 61"FTP Software")
- Note: this function will use the host table and or DNS to resolve the
- address, depending on kernel configuration. Use this call for the
- normal gethostbyaddr function.
- SeeAlso: INT 61"FTP Software",INT 61/AH=00h"PC/TCP",INT 61/AH=26h,INT 61/AH=27h
- --------N-6126-------------------------------
- INT 61 - PC/TCP kernel v2.05+ - "ad_htable" - GET HOST NAME FROM LOCAL TABLE
- AH = 26h
- DX,BX = IP address in network order
- CX = length of buffer
- DS:SI -> buffer for host name
- Return: CF clear if successful
- buffer filled with ASCIZ host name
- CF set on error
- AX = error code (see #2568 at INT 61"FTP Software")
- Notes: normally one would use AH=25h instead of this function
- this function is not supported by Beame&Whiteside's BWPCTCP v3.0a shim
- SeeAlso: INT 61"FTP Software",INT 61/AH=00h"PC/TCP",INT 61/AH=25h,INT 61/AH=27h
- --------b-6126-------------------------------
- INT 61 - Atari Portfolio - GET/SET POWER CONTROL
- AH = 26h
- AL = function
- 00h get state
- 01h set state
- DL = new state
- 00h normal power-down on low battery
- 01h no power-down, but display warning
- 02h no power-down, no warning on low battery
- Return: AL = current/old state
- SeeAlso: AH=00h"Portfolio",AH=24h"Portfolio",AH=28h"Portfolio"
- --------N-6127-------------------------------
- INT 61 - PC/TCP kernel v2.05+ - "ad_domain" - GET HOST NAME FROM DNS
- AH = 27h
- DX,BX = IP address in network order
- CX = length of buffer
- DS:SI -> buffer for host name
- Return: CF clear if successful
- buffer filled with ASCIZ host name
- CF set on error
- AX = error code (see #2568 at INT 61"FTP Software")
- Note: normally one would use AH=25h instead of this function
- SeeAlso: INT 61"FTP Software",INT 61/AH=00h"PC/TCP",INT 61/AH=25h,INT 61/AH=26h
- --------N-6128-------------------------------
- INT 61 - PC/TCP kernel v2.05+ - "net_swap" - EXCHANGE TWO NETWORK DESCRIPTORS
- AH = 28h
- BX = network descriptor 1
- CX = network descriptor 2
- Return: CF clear if successful
- CF set on error
- AX = error code (see #2568 at INT 61"FTP Software")
- Note: the two descriptors will exchange places; both must be local or both
- global
- SeeAlso: INT 61"FTP Software",INT 61/AH=00h"PC/TCP"
- --------b-6128-------------------------------
- INT 61 - Atari Portfolio - GET/SET TEXT/KEYBOARD LANGUAGE
- AH = 28h
- AL = function
- 00h get languages
- 01h set languages
- DH = new text language (set bit 7 to leave unchanged)
- DL = new keyboard language (set bit 7 to leave unchanged)
- 03h get language table pointers
- Return: if function 00h or 01h:
- DH = current/old text language
- DL = current/old keyboard language
- if function 03h
- ES:CX -> keyboard table (see #2720)
- ES:DX -> language table (see #2720)
- SeeAlso: AH=24h"Portfolio",AH=26h"Portfolio",AH=2Ch"Portfolio"
-
- Format of Atari Portfolio language table:
- Offset Size Description (Table 2720)
- 00h BYTE number of languages supported
- 01h N BYTEs supported languages
- 00h English
- 01h French
- 02h German
- 03h Spanish
- 04h Italian
- 05h Swedish
- 06h Danish
- --------N-6129-------------------------------
- INT 61 - PC/TCP kernel v2.05+ - "net_getglobdesc" - ALLOCATE GLOBAL DESCRIPTOR
- AH = 29h
- Return: CF clear if successful
- AX = network descriptor
- CF set on error
- AX = error code (see #2568 at INT 61"FTP Software")
- Note: use this function rather than AH=22h to avoid a DOS call by the PC/TCP
- kernel; the returned descriptor will be >= 40h and cannot be used
- with "net_select" (AH=0Eh)
- SeeAlso: INT 61"FTP Software",INT 61/AH=00h"PC/TCP",INT 61/AH=07h"PC/TCP"
- SeeAlso: INT 61/AH=22h
- --------N-612A-------------------------------
- INT 61 - PC/TCP kernel v2.05+ - GET CONFIGURATION INFORMATION
- AH = 2Ah
- DS:SI -> 26-byte buffer for configuration information (see #2721)
- Return: CF clear
- AX = 0000h
- buffer filled
- Notes: size of buffer may vary with kernel version; 26 bytes is the size for
- versions 2.05 through 2.2
- this function is not supported by Beame&Whiteside's BWPCTCP v3.0a shim
- SeeAlso: INT 61"FTP Software",INT 61/AH=00h"PC/TCP"
-
- Format of PC/TCP configuration information:
- Offset Size Description (Table 2721)
- 00h BYTE maximum TCP connections available
- 01h BYTE maximum UDP connections available
- 02h BYTE maximum IP connections available
- 03h BYTE maximum Raw Net connections available
- 04h BYTE number of TCP connections currently in use
- 05h BYTE number of UDP connections currently in use
- 06h BYTE number of IP connections currently in use
- 07h BYTE number of Raw Net connections currently in use
- 08h WORD number of local network descriptors active
- 0Ah WORD number of global network descriptors active
- 0Ch BYTE maximum header size on network
- 0Dh BYTE maximum trailer size on network
- 0Eh WORD size of large packet buffer
- 10h WORD number of network interfaces attached
- 12h DWORD milliseconds since kernel started
- 16h DWORD IP broadcast address
- --------N-612B-------------------------------
- INT 61 - PC/TCP kernel v2.02+ - "net_alarm" - SET TIMED ASYNCHRONOUS EVENT
- AH = 2Bh
- BX = network descriptor
- CX,DX = time before alarm in milliseconds
- DS:SI -> handler which will receive call (see #2716 at INT 61/AH=1Fh)
- ES:DI = 32-bit cookie passed to handler
- Return: CF clear if successful
- CF set on error
- AX = error code (see #2568 at INT 61"FTP Software")
- Notes: this function will cause a NET_AS_ALARM to be generated; it is intended
- for TSRs, etc. to regain control periodically
- this function is not supported by Beame&Whiteside's BWPCTCP v3.0a shim
- SeeAlso: INT 61"FTP Software",INT 61/AH=00h"PC/TCP"
- --------b-612C-------------------------------
- INT 61 - Atari Portfolio - GET VERSION
- AH = 2Ch
- Return: DS:BX -> BIOS version string ('$'-terminated)
- SeeAlso: AH=28h"Portfolio",AH=2Dh"Portfolio"
- --------b-612D-------------------------------
- INT 61 - Atari Portfolio - TURN SYSTEM OFF
- AH = 2Dh
- Return: nothing
- SeeAlso: AH=00h"Portfolio",AH=2Ch"Portfolio",AH=2Eh"Portfolio"
- --------b-612E-------------------------------
- INT 61 - Atari Portfolio - ENABLE/DISABLE SYSTEM STATUS LINE
- AH = 2Eh
- AL = new state
- 00h disabled
- 01h enabled
- DH,DL = row,column at which to display
- Return: nothing
- SeeAlso: AH=00h"Portfolio",AH=2Dh"Portfolio",AH=30h"Portfolio"
- --------N-6130-------------------------------
- INT 61 - PC/TCP kernel v2.05+ - "icmp_ping" - SEND ICMP ECHO REQUEST (PING)
- AH = 30h
- BX,DX = IP address of host
- CX = length of data to send
- Return: CF clear if successful (i.e. reply received)
- CF set on error
- AX = error code (see #2568 at INT 61"FTP Software")
- Note: this function is not supported by Beame&Whiteside's BWPCTCP v3.0a shim
- SeeAlso: INT 61"FTP Software",INT 61/AH=00h"PC/TCP"
- --------b-6130-------------------------------
- INT 61 - Atari Portfolio - FILE TRANSFER SERVICES
- AH = 30h
- AL = function
- 00h transmit block
- CX = number of bytes to send
- 01h receive block
- CX = buffer size
- 02h open ports
- 03h close ports
- 04h wait 500ms
- DS:DX -> start of data buffer
- Return: DL = status
- 00h successful
- 01h buffer too small
- 02h transmission timeout
- 03h checksum failure
- 04h invalid subfunction
- 05h peripheral not installed
- if function 01h:
- CX = number of bytes received
- SeeAlso: AH=00h"Portfolio",AH=2Eh"Portfolio"
- --------N-61---------------------------------
- INT 61 u - PC/TCP kernel v2.05 - NOP for SLIP kernel
- AH = function
- 31h "net_add_route"
- 32h "net_del_route"
- 33h "net_dump_routes"
- Notes: these functions are described as "unused" in the v2.2 documentation
- router configuration can be altered using INT 61/AH=01h
- this function is not supported by Beame&Whiteside's BWPCTCP v3.0a shim
- --------N-6132-------------------------------
- INT 61 U - PC/TCP kernel v2.3 - GET ???
- AH = 32h
- Return: AX = ???
- Note: this function is fully re-entrant, and may be called even when another
- PC/TCP kernel call is already in progress
- --------N-6134-------------------------------
- INT 61 U - PC/TCP kernel v2.1+ - "icmp_destun" - ???
- AH = 34h
- ???
- Return: ???
- Notes: this function is described as "reserved" in the v2.2 documentation
- this function is not supported by Beame&Whiteside's BWPCTCP v3.0a shim
- --------N-6150-------------------------------
- INT 61 - PC/TCP kernel v2.05+ - "nm_prs_addr" - TRANSLATE NUMERICAL IP ADDRESS
- AH = 50h
- DS:DX -> ASCIZ IP address as "dotted quad" (max 127 chars)
- Return: CF clear if successful
- DX:AX -> IP address
- CF set on error
- AX = error code (see #2568 at INT 61"FTP Software")
- Range: INT 20 to INT E0, selected by configuration
- SeeAlso: INT 61"FTP Software",INT 61/AH=00h"PC/TCP",INT 61/AH=54h
- --------N-6151-------------------------------
- INT 61 - PC/TCP kernel v2.05+ - "nm_htable" - RESOLVE NAME USING HOST TABLE
- AH = 51h
- CX = size of destination buffer
- DS:DX -> ASCIZ host name (max 127 chars)
- ES:DI -> destination buffer or 0000h:0000h
- Return: CF clear if successful
- DX:AX -> IP address of host
- destination buffer filled with canonical host name
- CF set on error
- AX = error code (see #2568 at INT 61"FTP Software")
- Note: this function calls DOS, and can fail if the DOS call fails
- SeeAlso: INT 61"FTP Software",INT 61/AH=00h"PC/TCP",INT 61/AH=54h
- --------N-6152-------------------------------
- INT 61 - PC/TCP kernel v2.05+ - "nm_domain" - RESOLVE NAME USING DNS
- AH = 52h
- CX = size of destination buffer
- DS:DX -> ASCIZ host name (max 127 chars)
- ES:DI -> destination buffer or 0000h:0000h
- Return: CF clear if successful
- DX:AX -> IP address of host
- destination buffer filled with canonical host name
- CF set on error
- AX = error code (see #2568 at INT 61"FTP Software")
- Note: this function will poll all configured domain name servers if necessary
- SeeAlso: INT 61"FTP Software",INT 61/AH=00h"PC/TCP",INT 61/AH=54h
- --------N-6153-------------------------------
- INT 61 - PC/TCP kernel v2.05- - "nm_ien116" - RESOLVE HOST NAME USING IEN116
- AH = 53h
- DS:DX -> ASCIZ name to be resolved (max 127 chars)
- Return: CF clear if successful
- DX:AX -> IP address of host
- CF set on error
- AX = error code (see #2568 at INT 61"FTP Software")
- Range: INT 20 to INT E0, selected by configuration
- Note: this function is not supported by v2.10+
- SeeAlso: INT 61"FTP Software",INT 61/AH=00h"PC/TCP",INT 61/AH=54h
- --------N-6154-------------------------------
- INT 61 - PC/TCP kernel v2.05+ - "nm_res_name" - RESOLVE HOST NAME
- AH = 54h
- CX = size of destination buffer
- DS:DX -> ASCIZ host name (max 127 chars)
- ES:DI -> destination buffer or 0000h:0000h
- Return: CF clear if successful
- DX:AX -> IP address of host
- destination buffer filled with canonical host name
- CF set on error
- AX = error code (see #2568 at INT 61"FTP Software")
- Note: this function uses all configured methods in turn to resolve the
- name (numerical, then host table, then DNS, then IEN116)
- BUG: the SLIP kernel for v2.05 bounds-checks the wrong register, so values
- greater than 54h in AH may crash the system. Other kernels may have
- this bug as well; it has been fixed in the v2.2 SLIPDRV kernel.
- SeeAlso: INT 61"FTP Software",INT 61/AH=00h"PC/TCP",INT 61/AH=50h,INT 61/AH=51h
- SeeAlso: INT 61/AH=52h,INT 61/AH=53h
- --------N-6155-------------------------------
- INT 61 U - PC/TCP kernel v2.3 - ???
- AH = 55h
- ???
- Return: ???
- SeeAlso: INT 61"FTP Software"
- --------N-6156-------------------------------
- INT 61 U - PC/TCP kernel v2.3 - ???
- AH = 56h
- ???
- Return: ???
- SeeAlso: INT 61"FTP Software"
- --------N-6157-------------------------------
- INT 61 U - PC/TCP kernel v2.3 - ???
- AH = 57h
- ???
- Return: ???
- SeeAlso: INT 61"FTP Software"
- --------N-6158-------------------------------
- INT 61 U - PC/TCP kernel v2.3 - ???
- AH = 58h
- ???
- Return: ???
- SeeAlso: INT 61"FTP Software"
- --------N-6159-------------------------------
- INT 61 U - PC/TCP kernel v2.3 - ???
- AH = 59h
- ???
- Return: ???
- SeeAlso: INT 61"FTP Software"
- --------N-615A-------------------------------
- INT 61 U - PC/TCP kernel v2.3 - ???
- AH = 5Ah
- ???
- Return: ???
- SeeAlso: INT 61"FTP Software"
- --------N-615B-------------------------------
- INT 61 U - PC/TCP kernel v2.3 - ???
- AH = 5Bh
- ???
- Return: ???
- SeeAlso: INT 61"FTP Software"
- --------N-615C-------------------------------
- INT 61 U - PC/TCP kernel v2.3 - ???
- AH = 5Ch
- ???
- Return: ???
- SeeAlso: INT 61"FTP Software"
- --------N-615D-------------------------------
- INT 61 U - PC/TCP kernel v2.3 - ???
- AH = 5Dh
- ???
- Return: ???
- SeeAlso: INT 61"FTP Software"
- --------N-615E-------------------------------
- INT 61 U - PC/TCP kernel v2.3 - ???
- AH = 5Eh
- ???
- Return: ???
- SeeAlso: INT 61"FTP Software"
- --------N-615F-------------------------------
- INT 61 U - PC/TCP kernel v2.3 - ???
- AH = 5Fh
- ???
- Return: ???
- SeeAlso: INT 61"FTP Software"
- --------*-62---------------------------------
- INT 62 - reserved for user interrupt
- --------d-62---------------------------------
- INT 62 - Adaptec and OMTI controllers - DRIVE 0 DATA
- Notes: this vector stores the third four bytes of the parameter table for
- hard disk 0
- SeeAlso: INT 60"Adaptec",INT 61"Adaptec",INT 63"Adaptec"
- --------b-62---------------------------------
- INT 62 - TI Professional PC - OPTION ROM DATA AREA POINTER (NOT A VECTOR!)
- Desc: the low word of this vector contains the segment of the RAM data area
- to be used by the expansion ROM at F400h:2000h, and the high word
- contains the length of the data area; this segment and size are
- both set to 0000h if no ROM is installed at F400h:2000h
- SeeAlso: INT 61"TI Professional PC",INT 63"TI Professional"
- SeeAlso: INT 66"TI Professional PC"
- --------b-62---------------------------------
- INT 62 - HP 95LX - USED BY CALCULATOR
- SeeAlso: INT 60/DI=0104h"HP 95LX"
- ----------62---------------------------------
- INT 62 - MS SQL Server/Sybase DBLIBRARY interface - ???
- AH = function (00h to 07h)
- CX = FFFEh
- DX = FFFFh
- ???
- Return: ???
- Note: the installation check consists of testing for the string "DBLIBRARY"
- 2 bytes past the interrupt handler
- SeeAlso: AH=08h"SQL"
- Index: installation check;MS SQL Server|installation check;Sybase DBLIBRARY
- ----------62---------------------------------
- INT 62 - MPAUSE - ???
- details not yet avialable
- Program: MPAUSE is a program by Manfred Michael which appeared in the German
- _EGA-Handbuch_ from m&t-Verlag
- --------N-62---------------------------------
- INT 62 - XFS v1.76 - FILTERED PACKET DRIVER API
- Program: XFS is a shareware Network File System client by Robert Juhasz
- Desc: XFS requires a packet driver to operate. Since it does redirections,
- etc., it provides its own packet driver entry point, changing the
- signature string of the original packet driver to "XKT DRVR" so that
- it will no longer be found by the packet driver installation check
- Range: INT 61 to INT 66, selected by scanning for two consecutive free
- vectors and hooking the second
- Note: the installation check for this vector is the same as that for the
- packet driver specification: scan for the signature string "PKT DRVR"
- three bytes past the interrupt handler
- SeeAlso: INT 60"Packet Driver Specification",INT 61"XFS"
- ----------62---------------------------------
- INT 62 - PC-DRAFT - PRIMARY DISPLAY DRIVER
- ???
- Return: ???
- Program: PC-DRAFT is a powerful CAD environment by rhv.
- SeeAlso: INT 64"PC-DRAFT",INT 65"PC-DRAFT",INT 66"PC-DRAFT",INT 67"PC-DRAFT"
- --------N-6200-------------------------------
- INT 62 - BW-TCP - HW DRIVER (ETHDEV.SYS) - GET PHYSICAL HARDWARE ADDRESS
- AH = 00h
- DS:DX -> 6-byte buffer for address
- Return: AX = length of hardware address???
- Range: INT 4C to INT FB, selected by configuration
- Note: the Beame&Whiteside TCP/IP protocol stack uses two consecutive
- interrupts (62h and 63h by default); the BW-NFS client uses a third
- consecutive interrupt (64h by default) if it is loaded
- SeeAlso: AH=01h"ETHDEV",AH=04h"ETHDEV",AH=09h"ETHDEV",AH=0Eh"ETHDEV"
- SeeAlso: AH=14h"ETHDEV",AH=18h"ETHDEV",AH=FEh,INT 21/AH=3Fh"BW-TCP"
- SeeAlso: INT 63/AH=03h"BW-TCP",INT 63/AH=24h"BW-TCP",INT 64/AH=01h"BW-NFS"
- --------V-620000-----------------------------
- INT 62 u - FGDRIVER v3.03+ - "FG_ALLOCATE" - CREATE VIRTUAL VIDEO PAGE
- AX = 0000h
- BX = page number (0000h-003Fh)
- Return: AX = status (0000h,0001h,0007h,0008h) (see #2722)
- Program: FGDRIVER is the external video driver for the shareware
- Fastgraph/Light by Ted Gruber Software
- Notes: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723)
- The amount of memory required by the virtual video page depends on the
- current video mode
- The installation check consists of testing for the signature "FG" ten
- bytes beyond the start of the interrupt handler
- SeeAlso: AX=0001h,AX=0002h,AX=0003h,AX=0038h
- Index: installation check;Fastgraph/Light
-
- (Table 2722)
- Values for FGDRIVER status:
- 0000h successful
- 0001h specified page is a physical or logical page
- 0007h virtual page created/released, but memory control blocks corrupted
- 0008h not enough memory
- 0009h attempt to free a page which was never created
- FFFCh insufficient memory
- FFFDh page already created, or exists as physical or virtual page
- FFFEh invalid page number
- FFFFh memory manager not initialized
- SeeAlso: #2723
-
- (Table 2723)
- Values for FGDRIVER functions (by driver version):
- Name v1.10 v3.03 v4.02
- FG_ALLOCATE 0042h 0000h 0000h
- FG_ALLOCCMS 009Dh 0001h 0001h
- FG_ALLOCEMS 009Eh 0002h 0002h
- FG_ALLOCXMS 009Fh 0003h 0003h
- FG_AUTOMODE 0004h 0004h 0004h
- FG_BESTMODE 0003h 0005h 0005h
- FG_BOX 00A2h 0006h 0006h
- FG_BOXDEPTH 00A3h 0007h 0007h
- FG_BOXX -- 0008h 0008h
- FG_BUTTON 0078h 0009h 0009h
- FG_CAPSLOCK 0070h 000Ah 000Ah
- FG_CHGATTR 0035h 000Bh 000Bh
- FG_CHGTEXT 0036h 000Ch 000Ch
- FG_CIRCLE 0030h 000Dh 000Dh
- FG_CIRCLEF -- 000Eh 000Eh
- FG_CLIPMAP -- -- 000Fh
- FG_CLIPMASK 0052h 000Fh 0010h
- FG_CLPIMAGE 004Ah 0010h 0011h
- FG_CLPRECT 002Bh 0011h 0012h
- FG_COLORS -- -- 0013h
- FG_COPYPAGE 005Fh 0012h 0014h
- FG_CURSOR 0007h 0013h 0015h
- FG_DASH 0027h 0014h 0016h
- FG_DASHREL 0028h 0015h 0017h
- FG_DEFCOLOR 0014h 0016h 0018h
- FG_DEFPAGES -- 0017h 0019h
- FG_DISPFILE 004Fh 0018h 001Ah
- FG_DISPLAY 004Dh 0019h 001Bh
- FG_DISPLAYP 004Eh 001Ah 001Ch
- FG_DISPPCX 0060h -- --
- FG_DRAW 0025h 001Bh 001Dh
- FG_DRAWMAP 0047h 001Ch 001Eh
- FG_DRAWMASK 0051h 001Dh 001Fh
- FG_DRAWREL 0026h 001Eh 0020h
- FG_DRAWRELX -- 001Fh 0021h
- FG_DRAWX -- 0020h 0022h
- FG_DRECT 002Ch 0021h 0023h
- FG_DRWIMAGE 0049h 0022h 0024h
- FG_EGACHECK 0005h 0023h 0025h
- FG_ELLIPSE 002Dh 0024h 0026h
- FG_ELLIPSEF -- 0025h 0027h
- FG_ERASE 001Eh 0026h 0028h
- FG_FADEIN 0064h 0027h 0029h
- FG_FADEOUT 0065h 0028h 002Ah
- FG_FILLPAGE -- 0029h 002Bh
- FG_FINDPAGE -- -- 002Ch
- FG_FLICDONE -- -- 002Dh
- FG_FLICHEAD -- -- 002Eh
- FG_FLICMODE -- -- 002Fh
- FG_FLICOPEN -- -- 0030h
- FG_FLICPLAY -- -- 0031h
- FG_FLICSIZE -- -- 0032h
- FG_FLICSKIP -- -- 0033h
- FG_FLIPMASK 0054h 002Ah 0034h
- FG_FLOOD -- 002Bh 0035h
- FG_FLPIMAGE 004Ch 002Ch 0036h
- FG_FONTSIZE -- 002Dh 0037h
- FG_FREEPAGE 0043h 002Eh 0038h
- FG_GETADDR 0044h 002Fh 0039h
- FG_GETATTR 0037h 0030h 003Ah
- FG_GETBANKS -- -- 003Bh
- FG_GETBLOCK -- 0031h 003Ch
- FG_GETCHAR 0038h 0032h 003Dh
- FG_GETCLIP -- -- 003Eh
- FG_GETCLOCK 0099h 0033h 003Fh
- FG_GETCOLOR 0015h 0034h 0040h
- FG_GETDACS 00A4h 0035h 0041h
- FG_GETENTRY -- 0036h 0042h
- FG_GETHPAGE 0040h 0037h 0043h
- FG_GETIMAGE 0048h 0038h 0044h
- FG_GETINDEX 0016h 0039h 0045h
- FG_GETKEY 006Eh 003Ah 0046h
- FG_GETLINES 0010h 003Bh 0047h
- FG_GETMAP 0046h 003Ch 0048h
- FG_GETMAXX 000Ah 003Dh 0049h
- FG_GETMAXY 000Bh 003Eh 004Ah
- FG_GETMODE 0000h 003Fh 004Bh
- FG_GETPAGE 003Ch 0040h 004Ch
- FG_GETPIXEL 0020h 0041h 004Dh
- FG_GETRGB 001Ch 0042h 004Eh
- FG_GETVIEW -- -- 004Fh
- FG_GETVPAGE 003Eh 0043h 0050h
- FG_GETXBOX -- -- 0051h
- FG_GETXJOY 0076h 0044h 0052h
- FG_GETXJUST -- -- 0053h
- FG_GETXPOS 0021h 0045h 0054h
- FG_GETYBOX -- -- 0055h
- FG_GETYJOY 0077h 0046h 0056h
- FG_GETYJUST -- -- 0057h
- FG_GETYPOS 0022h 0047h 0058h
- FG_HUSH 008Eh 0048h 0059h
- FG_HUSHNEXT 008Fh 0049h 005Ah
- FG_IMAGEBUF -- 004Ah 005Bh
- FG_IMAGESIZ 0062h 004Bh 005Ch
- FG_INITEMS 00A0h 004Ch 005Dh
- FG_INITJOY 0075h 004Dh 005Eh
- FG_INITPM -- -- 005Fh??? (NOP in v4.02)
- FG_INITXMS 00A1h 004Eh 0060h
- FG_INSIDE -- 004Fh 0061h
- FG_INTJOY 0079h 0050h 0062h
- FG_INTKEY 006Fh 0051h 0063h
- FG_INVERT -- -- 0064h
- FG_JUSTIFY -- 0052h 0065h
- FG_KBINIT -- 0053h 0066h
- FG_KBLAST -- -- 0067h
- FG_KBRESET -- -- 0068h
- FG_KBTEST -- 0054h 0069h
- FG_LOADPCX -- -- 006Ah
- FG_LOCATE 0033h 0055h 006Bh
- FG_MAKEPCX 0061h 0057h 006Ch
- FG_MAKEPPR -- 0058h 006Dh
- FG_MAKESPR -- 0059h 006Eh
- FG_MAPRGB 001Dh 005Ah 006Fh
- FG_MEASURE 0098h 005Bh 0070h
- FG_MEMAVAIL 009Bh 005Ch 0071h
- FG_MEMORY -- 005Dh 0072h
- FG_MOUSE256 -- -- 0073h
- FG_MOUSEBUT 007Ch 005Eh 0074h
- FG_MOUSECUR 007Eh 005Fh 0075h
- FG_MOUSEFIN -- 0060h 0076h
- FG_MOUSEINI 007Ah 0061h 0077h
- FG_MOUSELIM 0080h 0062h 0078h
- FG_MOUSEMOV 0081h 0063h 0079h
- FG_MOUSEPOS 007Dh 0064h 007Ah
- FG_MOUSEPTR 007Fh 0065h 007Bh
- FG_MOUSESPD 0082h 0066h 007Ch
- FG_MOUSEVIS 007Bh 0067h 007Dh
- FG_MOVE 0023h 0068h 007Eh
- FG_MOVEREL 0024h 0069h 007Fh
- FG_MUSIC 008Ch 006Ah 0080h
- FG_MUSICB 008Dh 006Bh 0081h
- FG_NUMLOCK 0072h 006Ch 0082h
- FG_PACK -- -- 0083h
- FG_PAGESIZE -- 006Dh 0084h
- FG_PAINT 002Fh 006Eh 0085h
- FG_PALETTE 0017h 006Fh 0086h
- FG_PALETTES 0018h 0070h 0087h
- FG_PAN 0066h 0071h 0088h
- FG_PATTERN 0050h 0072h 0089h
- FG_PCXHEAD -- 0073h 008Ah
- FG_PCXMODE -- 0074h 008Bh
- FG_PCXPAL -- -- 008Ch
- FG_PCXRANGE -- -- 008Dh
- FG_PLAYING 0091h 0075h 008Eh
- FG_POINT 001Fh 0076h 008Fh
- FG_POINTX -- 0077h 0090h
- FG_POLYEDGE -- -- 0091h
- FG_POLYFILL -- 0078h 0092h
- FG_POLYGON 002Eh 0079h 0093h
- FG_POLYLINE -- 007Ah 0094h
- FG_POLYOFF -- 007Bh 0095h
- FG_PRINT -- 007Ch 0096h
- FG_PRINTC -- -- 0097h
- FG_PUTBLOCK -- 007Dh 0098h
- FG_PUTIMAGE -- 007Eh 0099h
- FG_QUIET 0090h 007Fh 009Ah
- FG_RECT 002Ah 0080h 009Bh
- FG_RESET 0006h 0081h 009Ch
- FG_RESIZE 0045h 0082h 009Dh
- FG_RESTORE 005Bh 0083h 009Eh
- FG_RESUME 0092h 0084h 009Fh
- FG_REVIMAGE 004Bh 0085h 00A0h
- FG_REVMASK 0053h 0086h 00A1h
- FG_SAVE -- 0087h 00A2h
- FG_SCALE -- -- 00A3h
- FG_SCRLOCK 0074h 0088h 00A4h
- FG_SCROLL 0067h 0089h 00A5h
- FG_SETATTR 0019h 008Ah 00A6h
- FG_SETBANKS -- -- 00A7h
- FG_SETCAPS 0071h 008Bh 00A8h
- FG_SETCLIP 0029h 008Ch 00A9h
- FG_SETCOLOR 001Ah 008Dh 00AAh
- FG_SETDACS 00A5h 008Eh 00ABh
- FG_SETENTRY -- 008Fh 00ACh
- FG_SETFUNC 009Ch 0090h 00ADh
- FG_SETHPAGE 0041h 0091h 00AEh
- FG_SETLINES 0011h 0092h 00AFh
- FG_SETMODE 0001h 0093h 00B0h
- FG_SETNUM 0073h 0094h 00B1h
- FG_SETPAGE 003Dh 0095h 00B2h
- FG_SETRGB 001Bh 0096h 00B3h
- FG_SETVIEW -- -- 00B5h
- FG_SETVPAGE 003Fh 0098h 00B6h
- FG_SHEAR -- -- 00B7h
- FG_SHOWFLIC -- -- 00B8h
- FG_SHOWPCX -- 009Ah 00B9h
- FG_SHOWPPR -- 009Bh 00BAh
- FG_SHOWSPR -- 009Ch 00BBh
- FG_SOUND 0088h 009Dh 00BCh
- FG_SOUNDS 0089h 009Eh 00BDh
- FG_SPLIT -- -- 00BEh
- FG_STALL 0097h 009Fh 00BFh
- FG_SUSPEND 0093h 00A0h 00C0h
- FG_SVGAINIT -- 00A1h 00C1h
- FG_SVGASTAT -- 00A2h 00C2h
- FG_SVGAVER -- 00A3h 00C3h
- FG_TCDEFINE -- 00A4h 00C4h
- FG_TCMASK 005Eh 00A5h 00C5h
- FG_TCXFER 005Dh 00A6h 00C6h
- FG_TESTMODE 0002h 00A7h 00C7h
- FG_TEXT 0032h 00A8h 00C8h
- FG_TEXTC -- -- 00C9h
- FG_TRANSFER 005Ch 00A9h 00CAh
- FG_UNPACK -- -- 00CBh
- FG_VBADDR -- -- 00CCh
- FG_VBALLOC -- -- 00CDh
- FG_VBCLOSE -- -- 00CEh
- FG_VBCOPY -- -- 00CFh
- FG_VBCUT -- -- 00D0h
- FG_VBDEFINE -- -- 00D1h
- FG_VBFREE -- -- 00D2h
- FG_VBHANDLE -- -- 00D3h
- FG_VBINIT -- -- 00D4h
- FG_VBOPEN -- -- 00D5h
- FG_VBPASTE -- -- 00D6h
- FG_VBTCCOPY -- -- 00D7h
- FG_VBTCXFER -- -- 00D8h
- FG_VBUNDEF -- -- 00D9h
- FG_VGASTATE -- -- 00DAh
- FG_VOICE 008Ah 00AAh 00DBh
- FG_VOICES 008Bh 00ABh 00DCh
- FG_WAITFOR 0096h 00ACh 00DDh
- FG_WAITKEY 006Dh 00ADh 00DEh
- FG_WAITVR -- 00AEh 00DFh
- FG_WHERE 0034h 00AFh 00E0h
- FG_XALPHA 000Ch 00B0h 00E1h
- FG_XCONVERT 000Eh 00B1h 00E2h
- FG_XVIEW -- -- 00E3h
- FG_YALPHA 000Dh 00B2h 00E4h
- FG_YCONVERT 000Fh 00B3h 00E5h
- FG_YVIEW -- -- 00E6h
- SeeAlso: #2722
- --------V-620001-----------------------------
- INT 62 u - FGDRIVER v3.03+ - "FG_ALLOCCMS" - CREATE LOGICAL VIDEO PAGE (CONV)
- AX = 0001h
- BX = page number (0001h-003Fh)
- Return: AX = status (0000h,FFFCh,FFFDh,FFFEh) (see #2722)
- Notes: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723)
- The only operation which is allowed on logical pages is "FG_COPYPAGE"
- (see AX=0014h)
- SeeAlso: AX=0000h,AX=0002h,AX=0003h,AX=0014h,AX=0038h
- --------V-620002-----------------------------
- INT 62 u - FGDRIVER v3.03+ - "FG_ALLOCEMS" - CREATE LOGICAL VIDEO PAGE (EMS)
- AX = 0002h
- BX = page number (0001h-003Fh)
- Return: AX = status (0000h,FFFCh,FFFDh,FFFEh) (see #2722)
- Notes: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723)
- You must first call "FG_INITEMS" (see AX=005Dh) before using this
- function
- The only operation which is allowed on logical pages is "FG_COPYPAGE"
- (see AX=0014h)
- SeeAlso: AX=0000h,AX=0001h,AX=0003h,AX=0014h,AX=0038h,AX=005Dh
- --------V-620003-----------------------------
- INT 62 u - FGDRIVER v3.03+ - "FG_ALLOCXMS" - CREATE LOGICAL VIDEO PAGE (XMS)
- AX = 0003h
- BX = page number (0001h-003Fh)
- Return: AX = status (0000h,FFFCh,FFFDh,FFFEh) (see #2722)
- Notes: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723)
- You must first call "FG_INITXMS" (see AX=0060h) before using this
- function
- The only operation which is allowed on logical pages is "FG_COPYPAGE"
- (see AX=0014h)
- SeeAlso: AX=0000h,AX=0001h,AX=0002h,AX=0014h,AX=0038h,AX=0060h
- --------V-620004-----------------------------
- INT 62 u - FGDRIVER 1.10,3.03+ - "FG_AUTOMODE" - GET VIDEO MODE W/MOST FEATURES
- AX = 0004h
- Return: AX = proposed video mode number (see #2749 at AX=00B0h)
- Program: FGDRIVER is the external video driver for the shareware
- Fastgraph/Light by Ted Gruber Software
- Note: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723)
- SeeAlso: AX=0005h,AX=004Bh,AX=00B0h,AX=00C1h,AX=00C7h
- --------V-620005-----------------------------
- INT 62 u - FGDRIVER v3.03+ - "FG_BESTMODE" - GET BEST VIDEO MODE GIVEN RESOLUTN
- AX = 0005h
- BX = horizontal resolution
- CX = vertical resolution
- DX = number of video pages required (both physical and virtual)
- Return: AX = proposed video mode number or FFFFh if no matching video mode
- Notes: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723)
- You must first call "FG_SVGAINIT" (see AX=00C1h) to get SVGA video
- modes
- SeeAlso: AX=0004h,AX=004Bh,AX=00B0h,AX=00C1h,AX=00C7h
- --------V-620006-----------------------------
- INT 62 u - FGDRIVER v3.03+ - "FG_BOX" - DRAW UNFILLED RECTANGLE
- AX = 0006h
- BX = left column
- CX = right column
- DX = top row
- SI = bottom row
- Notes: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723)
- The rectangle is drawn in screen space, respecting the clipping region,
- with edges of the width specified with "FG_BOXDEPTH" (see AX=0007h)
- (default = 1 is set by "FG_SETMODE")
- This function has no effect in text modes
- SeeAlso: AX=0007h,AX=0008h,AX=000Ch,AX=0016h,AX=001Dh,AX=0026h,AX=0051h
- SeeAlso: AX=0055h,AX=008Fh
- --------V-620007-----------------------------
- INT 62 u - FGDRIVER v3.03+ - "FG_BOXDEPTH" - SET RECTANGLE BORDER WIDTH
- AX = 0007h
- BX = width of left and right edges in pixels (> 0)
- CX = width of top and bottom edges in pixels (> 0)
- Note: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723)
- SeeAlso: AX=0006h,AX=0008h,AX=0051h,AX=0055h
- --------V-620008-----------------------------
- INT 62 u - FGDRIVER v3.03+ - "FG_BOXX" - XOR HOLLOW RECTANGLE
- AX = 0008h
- BX = left column
- CX = right column
- DX = top row
- SI = bottom row
- Notes: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723)
- The rectangle is XORed into screen space, respecting the clipping
- region, with edges of the width specified with "FG_BOXDEPTH"
- (see AX=0007h) (default = 1 is set by "FG_SETMODE")
- This function has no effect in text modes
- SeeAlso: AX=0006h,AX=0007h,AX=0021h,AX=0022h,AX=0051h,AX=0055h,AX=0090h
- --------V-620009-----------------------------
- INT 62 u - FGDRIVER v3.03+ - "FG_BUTTON" - GET JOYSTICK BUTTON STATE
- AX = 0009h
- BX = joystick number (0001h or 0002h)
- Return: AX = button states
- bit 0: top button pressed
- bit 1: bottom button pressed
- Note: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723)
- SeeAlso: AX=0052h,AX=0056h,AX=005Eh,AX=0062h,AX=0077h
- --------V-62000A-----------------------------
- INT 62 u - FGDRIVER v3.03+ - "FG_CAPSLOCK" - GET STATE OF CAPSLOCK KEY
- AX = 000Ah
- Return: AX = CapsLock state (0000h off, 0001h on)
- Note: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723)
- SeeAlso: AX=0082h,AX=00A4h,AX=00A8h,AX=00B1h
- --------V-62000B-----------------------------
- INT 62 u - FGDRIVER v3.03+ - "FG_CHGATTR" - APPLY CURRENT TEXT ATTRIB TO CHARS
- AX = 000Bh
- BX = number of characters to recolor
- Notes: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723)
- This call is ignored in graphics modes
- Starting at the current text cursor position, the specified number of
- characters have their attributes to the current text attribute
- SeeAlso: AX=000Ch,AX=003Ah,AX=00A6h
- --------V-62000C-----------------------------
- INT 62 u - FGDRIVER v3.03+ - "FG_CHGTEXT" - DISPLAY STRING AT CURSOR POSITION
- AX = 000Ch
- CX = length of string
- ES:BX -> string to be displayed
- Return: text cursor updated
- Notes: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723)
- This call is ignored in graphics modes
- SeeAlso: AX=000Bh,AX=0096h
- --------V-62000D-----------------------------
- INT 62 u - FGDRIVER v3.03+ - "FG_CIRCLE" - DRAW UNFILLED CIRCLE
- AX = 000Dh
- BX = radius in horizontal screen space units (> 0)
- Notes: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723)
- The circle is drawn in screen space, centered at the current graphics
- cursor position
- This call is ignored in text modes
- SeeAlso: AX=0006h,AX=0008h,AX=000Eh,AX=0026h,AX=0093h
- --------V-62000E-----------------------------
- INT 62 u - FGDRIVER v3.03+ - "FG_CIRCLEF" - DRAW FILLED CIRCLE
- AX = 000Eh
- BX = radius in horizontal screen space units (> 0)
- Note: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723)
- SeeAlso: AX=0008h,AX=000Dh,AX=0027h,AX=0092h
- --------V-62000F-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_CLIPMAP" - DISPLAY CLIPPED IMAGE (MODE-INDEP)
- AX = 000Fh
- ES:BX -> bitmap
- CX = width
- DX = height
- Desc: display a mode-independent bitmap, showing only the portion within
- the current clipping limits
- Notes: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723)
- This call is ignored in text modes and in native EGA and VGA graphics
- modes
- The image is drawn with its lower left corner at the current graphics
- cursor position
- SeeAlso: AX=0011h,AX=001Fh,AX=0034h,AX=0086h,AX=00A9h,AX=00C5h
- --------V-620010-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_CLIPMASK" - DISPLAY CLIPPED IMAGE (MASKING MAP)
- AX = 0010h
- ES:BX -> array containing image stored as a masking map (see #2724)
- CX = number of pixel runs in masking map
- DX = width of masking map in pixels
- Notes: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723)
- This call is ignored in text modes and in native EGA and VGA graphics
- modes
- The image is drawn with its lower left corner at the current graphics
- cursor position
- SeeAlso: AX=0011h,AX=001Fh,AX=0034h,AX=00A1h,AX=00A9h,AX=00C5h
- --------V-620011-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_CLPIMAGE" - DISPLAY CLIPPED IMAGE (BITMAP)
- AX = 0011h
- ES:BX -> mode-specific bitmap
- CX = width of bit map in bytes
- DX = height of bit map in pixel rows
- Notes: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723)
- This call is ignored in text modes
- The image is drawn with its lower left corner at the current graphics
- cursor position
- The current clipping region is used, extended to a byte boundary
- SeeAlso: AX=0010h,AX=0024h,AX=0036h,AX=0044h,AX=00A0h,AX=00A9h,AX=00B9h
- --------V-620012-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_CLPRECT" - DRAW FILLED RECTANGLE IN SCREEN SPCE
- AX = 0012h
- BX = screen space column of left edge
- CX = screen space column of right edge
- DX = screen space row of top edge
- SI = screen space row of bottom edge
- Notes: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723)
- This call is ignored in text modes
- SeeAlso: AX=0006h,AX=0010h,AX=0011h,AX=0023h,AX=009Bh,AX=00A9h
- --------V-620013-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_COLORS" - GET SIMULTANEOUSLY-AVAILABLE COLORS
- AX = 0013h
- Return: AX = number of colors available at one time
- Note: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723)
- --------V-620014-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_COPYPAGE" - TRANSFER VIDEO PAGE CONTENTS
- AX = 0014h
- BX = source page number (0000h-003Fh)
- CX = destination page number (0000h-003Fh)
- Notes: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723)
- If both source and destination pages are logical pages, they must both
- be located in the same type (conventional, EMS, XMS) of memory
- SeeAlso: AX=009Eh,AX=00A2h,AX=00C6h,AX=00CAh
- --------V-620015-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_CURSOR" - SPECIFY WHETHER TEXT CURSR IS VISIBLE
- AX = 0015h
- BX = new state (0000h invisible, 0001h visible)
- Notes: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723)
- This call is ignored in text modes
- SeeAlso: AX=000Ch,AX=0054h,AX=0058h,AX=006Bh,AX=0075h,AX=0079h,AX=007Eh
- SeeAlso: AX=00E0h
- --------V-620016-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_DASH" - DRAW DASHED LINE TO ABSOLUTE POSITION
- AX = 0016h
- BX = endpoint column
- CX = endpoint row
- DX = dash pattern (set bits cause drawn pixels)
- Notes: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723)
- This call is ignored in text modes
- The starting point is the current graphics cursor position; the cursor
- position is updated
- SeeAlso: AX=0017h,AX=001Dh,AX=008Fh
- --------V-620017-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_DASHREL" - DRAW DASHED LINE TO RELATVE POSITION
- AX = 0017h
- BX = endpoint column offset
- CX = endpoint row offset
- DX = dash pattern (set bits cause drawn pixels)
- Notes: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723)
- This call is ignored in text modes
- The starting point is the current graphics cursor position; the cursor
- position is updated
- SeeAlso: AX=0016h,AX=001Eh,AX=008Fh
- --------V-620018-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_DEFCOLOR" - ASSIGN COLOR VALUE TO COLOR INDEX
- AX = 0018h
- BX = color index (0000h-00FFh)
- CX = new color value (0 to maximum color value for current video mode)
- Notes: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723)
- This call is ignored in text modes and 256-color graphics modes
- SeeAlso: AX=0040h,AX=0045h,AX=00AAh
- --------V-620019-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_DEFPAGES" - DEF SRC/DEST PAGES FOR BLOCK XFERS
- AX = 0019h
- BX = source page
- CX = destination page
- Desc: specify the source and destination SVGA banks for block transfers on
- extended video pages
- Notes: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723)
- This function is ignored if the video controller does not support
- extended pages or the current video mode does not allow them
- SeeAlso: AX=0014h,AX=00CAh
- --------V-62001A-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_DISPFILE" - DISPLAY STORED IMAGE
- AX = 001Ah
- ES:BX -> ASCIZ filename
- CX = image width in pixels (> 0)
- DX = image format
- 0000h Fastgraph standard pixel run format
- 0001h packed pixel run format
- Notes: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723)
- This call is ignored in text modes
- The image is displayed with its lower left corner at the current
- graphics cursor position
- SeeAlso: AX=001Bh,AX=001Ch,AX=00B9h,AX=00BAh,AX=00BBh
- --------V-62001B-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_DISPLAY" - DISPLAY IMAGE (STD PIXEL RUN FORMAT)
- AX = 001Bh
- ES:BX -> pixel run map (pairs of bytes: color index, count)
- CX = number of pixel runs to display
- DX = width of image in pixels (> 0)
- Notes: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723)
- This call is ignored in text modes
- The image is displayed with its lower left corner at the current
- graphics cursor position
- SeeAlso: AX=001Ah,AX=001Ch,AX=00B9h,AX=00BAh,AX=00BBh
- --------V-62001C-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_DISPLAYP" - DISPLAY IMAGE (PACKED PIXEL RUNS)
- AX = 001Ch
- ES:BX -> pixel run map (trios of bytes: colors, count1, count2; colors
- contains the color for the first run in its high nybble and
- the color for the second run in its low nybble)
- CX = number of pixel runs to display
- DX = width of image in pixels (> 0)
- Notes: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723)
- This call is ignored in text modes
- The image is displayed with its lower left corner at the current
- graphics cursor position
- SeeAlso: AX=001Ah,AX=001Bh,AX=00B9h,AX=00BAh,AX=00BBh
- --------V-62001D-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_DRAW" - DRAW SOLID LINE TO ABSOLUTE POSITION
- AX = 001Dh
- BX = endpoint column
- CX = endpoint row
- Notes: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723)
- This call is ignored in text modes
- The starting point is the current graphics cursor position; the cursor
- position is updated
- SeeAlso: AX=0016h,AX=0020h,AX=0021h,AX=0026h,AX=008Fh,AX=0090h
- --------V-62001E-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_DRAWMAP" - DISPLAY MODE-INDEPENDENT BIT MAP
- AX = 001Eh
- ES:BX -> bitmap (each set bit is pixel drawn in current color)
- CX = width of bitmap in bytes
- DX = height of bitmap in pixel rows
- Note: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723)
- SeeAlso: AX=0011h,AX=0024h,AX=0036h,AX=0044h,AX=0099h,AX=00A0h
- --------V-62001F-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_DRAWMASK" - DISPLAY IMAGE (MASKING MAP)
- AX = 001Fh
- ES:BX -> array containing image stored as a masking map (see #2724)
- CX = number of pixel runs in masking map
- DX = width of masking map in pixels
- Notes: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723)
- This call is ignored in text modes and in native EGA and VGA graphics
- modes
- The image is drawn with its lower left corner at the current graphics
- cursor position
- SeeAlso: AX=0010h,AX=001Fh,AX=00A1h,AX=00A9h
-
- Format of FGDRIVER masking map:
- Offset Size Description (Table 2724)
- 00h BYTE length of first "protect" run (pixels remain unchanged)
- 01h BYTE length of first "zero" run (pixels set to background color)
- 02h BYTE length of second "protect" run
- 03h BYTE length of second "zero" run
- ...
- --------V-620020-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_DRAWREL" - DRAW SOLID LINE TO RELATIVE POSITION
- AX = 0020h
- BX = endpoint column offset
- CX = endpoint row offset
- Notes: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- This call is ignored in text modes
- The starting point is the current graphics cursor position; the cursor
- position is updated
- SeeAlso: AX=0006h,AX=000Dh,AX=001Dh,AX=0021h,AX=0026h,AX=008Fh
- --------V-620021-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_DRAWRELX" - XOR SOLID LINE TO RELATIVE POSITION
- AX = 0021h
- BX = endpoint column offset
- CX = endpoint row offset
- Desc: draw a solid line, XORing each pixel onto the screen
- Notes: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- This call is ignored in text modes
- The starting point is the current graphics cursor position; the cursor
- position is updated
- SeeAlso: AX=0006h,AX=000Dh,AX=001Dh,AX=0020h,AX=0026h,AX=0090h
- --------V-620022-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_DRAWX" - XOR SOLID LINE TO ABSOLUTE POSITION
- AX = 0022h
- BX = endpoint column
- CX = endpoint row
- Desc: draw a solid line, XORing each pixel onto the screen
- Notes: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- This call is ignored in text modes
- The starting point is the current graphics cursor position; the cursor
- position is updated
- SeeAlso: AX=001Dh,AX=0021h,AX=008Fh
- --------V-620023-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_DRECT" - DRAW DITHERED RECTANGLE IN SCRN SPACE
- AX = 0023h
- BX = screen space column of left edge
- CX = screen space column of right edge
- DX = screen space row of top edge
- SI = screen space row of bottom edge
- ES:DI -> dithering matrix (video-mode dependent)
- Notes: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- This call is ignored in text modes
- SeeAlso: AX=0006h,AX=0008h,AX=0013h,AX=003Ch,AX=0089h,AX=009Bh
- --------V-620024-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_DRWIMAGE" - DISPLAY BITMAPPED IMAGE
- AX = 0024h
- ES:BX -> video mode-specific bitmap
- CX = width of bitmap in bytes
- DX = height of bitmap in pixel rows
- Notes: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- The image will be drawn with its lower left corner at the current
- cursor position (either text or graphics)
- SeeAlso: AX=0011h,AX=0036h,AX=0044h,AX=0099h,AX=00A0h
- --------V-620025-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_EGACHECK" - GET INFO ABOUT ACTIVE EGA DISPLAY
- AX = 0025h
- Return: AX = number of 64K banks of video memory, or 0000h if no EGA or EGA
- without an Enhanced Color Display
- Note: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- SeeAlso: AX=00C2h
- --------V-620026-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_ELLIPSE" - DRAW UNFILLED ELLIPSE IN SCRN SPACE
- AX = 0026h
- BX = horizontal semi-axis length in screen space units
- CX = vertical semi-axis length in screen space units
- Notes: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- This call is ignored in text modes
- The ellipse is centered at the current graphics cursor position
- SeeAlso: AX=0006h,AX=000Dh,AX=0027h,AX=008Fh,AX=0093h
- --------V-620027-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_ELLIPSEF" - DRAW FILLED ELLIPSE IN SCREEN SPACE
- AX = 0027h
- BX = horizontal semi-axis length in screen space units
- CX = vertical semi-axis length in screen space units
- Notes: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- This call is ignored in text modes
- The ellipse is centered at the current graphics cursor position
- SeeAlso: AX=0006h,AX=000Eh,AX=0026h,AX=008Fh,AX=0092h
- --------V-620028-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_ERASE" - CLEAR THE ACTIVE VIDEO PAGE
- AX = 0028h
- Notes: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- This function sets each pixel to 0 in graphics modes, each character
- cell to a blank with a gray foreground attribute in text modes
- SeeAlso: AX=0029h,AX=002Bh,AX=0035h
- --------V-620029-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_FADEIN" - FADE IN HIDDEN PAGE
- AX = 0029h
- BX = delay (0000h = fastest possible fade-in)
- Notes: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- The current hidden page is copied to the current visible page in small
- random sections to produce a fade-in effect
- This call is ignored in text modes
- SeeAlso: AX=0028h,AX=002Ah,AX=002Bh
- --------V-62002A-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_FADEOUT" - FADE OUT TO CURRENT COLOR
- AX = 002Ah
- BX = delay (0000h = fastest possible fade-out)
- Notes: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- The current visible page is filled with pixels of the current color in
- small random sections to give a fade-out effect
- This call is ignored in text modes
- SeeAlso: AX=0028h,AX=0029h,AX=002Bh
- --------V-62002B-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_FILLPAGE" - FILL THE ACTIVE VIDEO PAGE
- AX = 002Bh
- Desc: fill the active video page with pixels of the current color (graphics
- modes) or the block character DBh with the current character
- attributes (text modes)
- Note: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- SeeAlso: AX=0028h,AX=0029h,AX=002Ah
- --------V-62002C-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_FINDPAGE" - FIND AVAILABLE VIRTUAL/LOGICAL PAGE
- AX = 002Ch
- Return: AX = first available page number (virtual or logical page)
- Note: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- SeeAlso: AX=0028h
- --------V-62002D-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_FLICDONE" - CLOSE FLIC FILE
- AX = 002Dh
- ES:BX -> context descriptor (see AX=0030h)
- Return: nothing
- Note: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- SeeAlso: AX=002Eh,AX=0030h
- --------V-62002E-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_FLICHEAD" - READ FLI/FLC FILE HEADER
- AX = 002Eh
- ES:BX -> FLICHEAD variable pointer record (see #2726)
- Return: AX = status (see #2725)
- Note: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- SeeAlso: AX=002Dh,AX=002Fh,AX=0030h,AX=0032h
-
- (Table 2725)
- Values for FGDRIVER FLIC processing status:
- 0000h successful
- FFFEh not an FLI or FLC file
- FFFFh file not found
-
- Format of FGDRIVER FLICHEAD variable pointer record:
- Offset Size Description (Table 2726)
- 00h WORD segment of ASCIZ FLI/FLC file name
- 02h WORD offset of ASCIZ FLI/FLC file name
- 04h WORD segment of buffer for 128-byte file header
- 06h WORD offset of buffer for 128-byte file header
- --------V-62002F-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_FLICMODE" - GET OPTIMAL VIDEO MODE FOR FLI/FLC
- AX = 002Fh
- ES:BX -> 128-byte buffer containing FLI/FLC file header (see AX=002Eh)
- Return: AX = optimal 256-color graphics mode number
- FFFFh if invalid file header
- Note: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- SeeAlso: AX=002Eh,AX=0030h
- --------V-620030-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_FLICOPEN" - OPEN FLI/FLC FILE
- AX = 0030h
- ES:BX -> FLICOPEN variable pointer record (see #2727)
- Return: AX = status (see #2725)
- Note: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- SeeAlso: AX=002Dh,AX=002Eh,AX=002Fh,AX=0030h,AX=0031h,AX=0032h
-
- Format of FGDRIVER FLICOPEN variable pointer record:
- Offset Size Description (Table 2727)
- 00h WORD segment of ASCIZ FLI/FLC file name
- 02h WORD offset of ASCIZ FLI/FLC file name
- 04h WORD segment of buffer for 16-byte file context descriptor
- 06h WORD offset of buffer for 16-byte file context descriptor
- --------V-620031-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_FLICPLAY" - DISPLAY NEXT FRAME(S) IN FLI/FLC
- AX = 0031h
- ES:BX -> context descriptor (see AX=0030h)
- CX = number of frames to display starting at current frame
- DX = control flags (see #2728)
- Return: AX = number of frames displayed
- Note: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- SeeAlso: AX=0030h,AX=0033h,AX=00B8h
-
- Bitfields for FGDRIVER FLI/FLC control flags:
- Bit(s) Description (Table 2728)
- 0 skip inter-frame delay specified in FLI/FLC header
- 1 display relative to current graphics position
- 2 dipslay image from the FG_IMAGEBUF buffer instead of file
- --------V-620032-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_FLICSIZE" - GET IMAGE SIZE
- AX = 0032h
- ES:BX -> FLICSIZE variable pointer record (see #2729)
- Return: image height/width buffers updated; height is set to FFFFh on error
- Note: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- SeeAlso: AX=002Eh,AX=0030h
-
- Format of FGDRIVER FLICSIZE variable pointer record:
- Offset Size Description (Table 2729)
- 00h WORD segment of buffer for 128-byte FLI/FLC file header
- 02h WORD offset of buffer for 128-byte FLI/FLC file header
- 04h WORD segment of WORD buffer for image width in pixels
- 06h WORD offset of WORD buffer for image width in pixels
- 08h WORD segment of WORD buffer for image height in pixels
- 0Ah WORD offset of WORD buffer for image height in pixels
- --------V-620033-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_FLICSKIP" - SKIP FRAME(S) IN FLI/FLC FILE
- AX = 0033h
- ES:BX -> context descriptor (see AX=0030h)
- CX = number of frames to skip
- reset to first frame if skip count is negative
- Return: AX = number of frames skipped (may be less than requested if EOF)
- 0000h if resetting to first frame
- Note: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- SeeAlso: AX=0030h,AX=0031h
- --------V-620034-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_FLIPMASK" - DISPLAY INV CLIPPED IMAGE (MASKMAP)
- AX = 0034h
- ES:BX -> array containing image stored as a masking map (see #2724)
- CX = number of pixel runs in masking map
- DX = width of masking map in pixels
- Notes: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- This call is ignored in text modes and in native EGA and VGA graphics
- modes
- The image is drawn with its lower left corner at the current graphics
- cursor position
- SeeAlso: AX=000Fh,AX=001Fh,AX=0036h,AX=00A1h,AX=00A5h,AX=00C5h
- --------V-620035-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_FLOOD" - FLOOD FILL ARBITRARY CLOSED REGION
- AX = 0035h
- BX = starting column
- CX = starting row
- Desc: fill the bounded region around the specified point (respecting clipping
- region) with the currrent color
- Notes: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- This function is ignored in text modes
- SeeAlso: AX=0028h,AX=0085h
- --------V-620036-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_FLPIMAGE" - DISPLAY INV CLIPPED IMAGE (BITMAP)
- AX = 0036h
- ES:BX -> mode-specific bitmap
- CX = width of bit map in bytes
- DX = height of bit map in pixel rows
- Notes: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- This call is ignored in text modes
- The image is drawn with its lower left corner at the current graphics
- cursor position
- The current clipping region is used, extended to a byte boundary
- SeeAlso: AX=0011h,AX=0024h,AX=0034h,AX=0044h,AX=00A0h,AX=00A9h,AX=00B9h
- --------V-620037-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_FONTSIZE" - SPECIFY FONT SIZE FOR TEXT OUTPUT
- AX = 0037h
- BX = desired character height in scan lines (8, 14, 16)
- Notes: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- This call is ignored if the current mode is not a VGA or SVGA graphics
- mode, or the specified character height is not 8, 14, or 16
- SeeAlso: AX=0096h
- --------V-620038-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_FREEPAGE" - FREE VIRTUAL OR LOGICAL VIDEO PAGE
- AX = 0038h
- BX = page number (0000h-003Fh)
- Return: AX = status (0000h,0001h,0007h,0009h) (see #2722)
- Note: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- SeeAlso: AX=0000h,AX=0001h,AX=0002h,AX=0003h
- --------V-620039-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_GETADDR" - GET SEGMENT OF ACTIVE VIDEO PAGE
- AX = 0039h
- Return: AX = segment of active video page
- Note: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- SeeAlso: AX=0042h,AX=00ACh
- --------V-62003A-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_GETATTR" - GET CHARACTER ATTRIB FOR POSITION
- AX = 003Ah
- BX = row
- CX = column
- Return: AX = character attribute at specified location on active video page
- Notes: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- This call is ignored in graphics modes
- SeeAlso: AX=000Bh,AX=003Dh,AX=0040h,AX=00A6h
- --------V-62003B-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_GETBANKS" - GET SVGA READ AND WRITE BANKS
- AX = 003Bh
- ES:BX -> GETBANKS variable pointer record (see #2730)
- Return: nothing
- Note: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- SeeAlso: AX=00A7h
-
- Format of FGDRIVER GETBANKS variable pointer record:
- Offset Size Description (Table 2730)
- 00h WORD segment of WORD buffer for read bank number
- 02h WORD offset of WORD buffer for read bank number
- 04h WORD segment of WORD buffer for write bank number
- 06h WORD offset of WORD buffer for write bank number
- --------V-62003C-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_GETBLOCK" - GRAB RECTANGLE OF DISPLAY
- AX = 003Ch
- ES:BX -> buffer for screen contents
- CX = leftmost column
- DX = rightmost column
- SI = top row
- DI = bottom row
- Notes: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- In text modes, coordinates are character positions; in graphics modes,
- they are defined in screen space, and the left and right edges are
- adjusted to a byte boundary if necessary
- Use "FG_IMAGESIZ" (see AX=005Ch) to determine the required buffer size
- SeeAlso: AX=0044h,AX=005Ch,AX=0098h
- --------V-62003D-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_GETCHAR" - GET CHARACTER FOR SCREEN POSITION
- AX = 003Dh
- BX = row
- CX = column
- Return: AX = character at specified location on active video page
- Notes: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- This call is ignored in graphics modes
- SeeAlso: AX=000Bh,AX=003Ah,AX=0096h,AX=00A6h,AX=00C8h
- --------V-62003E-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_GETCLIP" - GET CLIPPING REGION IN SCREEN SPACE
- AX = 003Eh
- ES:BX -> GETCLIP variable pointer record (see #2731)
- Return: variables specifed by GETCLIP structure updated
- Note: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- SeeAlso: AX=00CAh
-
- Format of FGDRIVER GETCLIP variable pointer record:
- Offset Size Description (Table 2731)
- 00h WORD segment of WORD buffer for minimum X coordinate (left edge)
- 02h WORD offset of WORD buffer for minimum X coordinate (left edge)
- 04h WORD segment of WORD buffer for maximum X coordinate (right edge)
- 06h WORD offset of WORD buffer for maximum X coordinate (right edge)
- 08h WORD segment of WORD buffer for minimum Y coordinate (top edge)
- 0Ah WORD offset of WORD buffer for minimum Y coordinate (top edge)
- 0Ch WORD segment of WORD buffer for maximum Y coordinate (bottom edge)
- 0Eh WORD offset of WORD buffer for maximum Y coordinate (bottom edge)
- --------V-62003F-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_GETCLOCK" - GET CLOCK TICKS SINCE MIDNIGHT
- AX = 003Fh
- Return: DX:AX = number of clock ticks since midnight
- Note: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- SeeAlso: INT 1A/AH=00h
- --------V-620040-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_GETCOLOR" - GET CURRENT TEXT ATTRIBUTE
- AX = 0040h
- Return: AX = current text attribute or color index (graphics modes)
- Note: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- SeeAlso: AX=000Bh,AX=003Ah,AX=00A6h
- --------V-620041-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_GETDACS" - GET VIDEO DAC CONTENTS
- AX = 0041h
- CX = number of DAC registers to return (0001h to 0100h)
- DX = starting DAC register number (0000h to 00FFh)
- ES:BX -> buffer for DAC red/green/blue triples
- Notes: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- The register number wraps back to zero after FFh
- SeeAlso: AX=004Eh,AX=0086h,AX=00ABh
- --------V-620042-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_GETENTRY" - GET PAGE TYPE AND ADDRESS
- AX = 0042h
- ES:BX -> variable pointer record (see #2732)
- CX = page number (00h-3Fh)
- Notes: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- Page addresses are segments for pages stored in conventional memory
- (including physical and virtual pages), and EMS or XMS handles for
- pages stored in EMS or XMS
- SeeAlso: AX=0000h,AX=00ACh
-
- Format of FGDRIVER GETENTRY variable pointer record:
- Offset Size Description (Table 2732)
- 00h WORD segment of WORD buffer for page address
- 02h WORD offset of WORD buffer for page address
- 04h WORD segment of WORD buffer for page type (se #2733)
- 06h WORD offset of WORD buffer for page type
-
- (Table 2733)
- Values for FGDRIVER page type:
- 0000h unallocated
- 0001h physical
- 0002h virtual
- 0003h logical page, stored in expanded memory (EMS)
- 0004h logical page, stored in extended memory (XMS)
- 0005h logical page, stored in conventional memory
- --------V-620043-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_GETHPAGE" - GET CURRENT HIDDEN VIDEO PAGE NUM
- AX = 0043h
- Return: AX = current hidden video page number (0000h-003Fh)
- Note: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- SeeAlso: AX=004Ch,AX=0050h,AX=00AEh
- --------V-620044-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_GETIMAGE" - STORE IMAGE AS BITMAP
- AX = 0044h
- ES:BX -> buffer for video mode-specific bitmap
- CX = width of bitmap in bytes
- DX = height of bitmap in pixel rows
- Note: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- SeeAlso: AX=0011h,AX=0024h,AX=0036h,AX=0099h,AX=00A0h
- --------V-620045-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_GETINDEX" - GET COLOR VALUE FOR COLOR INDEX
- AX = 0045h
- BX = color index (0000h to 00FFh)
- Return: AX = color value for specified color index
- Notes: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- This call returns the value passed to it in text and 256-color
- graphics modes
- SeeAlso: AX=0018h,AX=0040h
- --------V-620046-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_GETKEY" - GET NEXT KEYSTROKE
- AX = 0046h
- ES:BX -> variable pointer record (see #2734)
- Return: (after next keystroke if no typeahead) variables updated
- Note: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- SeeAlso: AX=000Ah,AX=0063h,AX=0069h,AX=00DEh,INT 16/AH=00h
-
- Format of FGDRIVER GETKEY variable pointer record:
- Offset Size Description (Table 2734)
- 00h WORD segment of BYTE buffer for ASCII keycode
- 02h WORD offset of BYTE buffer for ASCII keycode
- 04h WORD segment of BYTE buffer for extended keycode
- 06h WORD offset of BYTE buffer for extended keycode
- --------V-620047-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_GETLINES" - GET TEXT ROWS FOR CURR VIDEO MODE
- AX = 0047h
- Return: AX = number of text rows on screen in current video mode
- Note: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- SeeAlso: AX=00AFh,AX=00C2h
- --------V-620048-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_GETMAP" - STORE IMAGE AS MODE-INDEPENDNT BITMAP
- AX = 0048h
- ES:BX -> buffer for video mode-independent bitmap
- CX = width of bitmap in bytes
- DX = height of bitmap in pixel rows
- Return: each bit in bitmap is set if corresponding pixel is of the current
- color, cleared otherwise
- Notes: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- This call is ignored in text modes
- SeeAlso: AX=0011h,AX=001Eh,AX=0024h
- --------V-620049-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_GETMAXX" - GET MAXIMUM COLUMN IN SCREEN SPACE
- AX = 0049h
- Return: AX = maximum X coordinate in screen space
- (or character space if in text mode)
- Note: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- SeeAlso: AX=004Ah,AX=00C1h
- --------V-62004A-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_GETMAXY" - GET MAXIMUM ROW IN SCREEN SPACE
- AX = 004Ah
- Return: AX = maximum Y coordinate in screen space
- (or character space if in text mode)
- Note: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- SeeAlso: AX=0049h,AX=00C1h
- --------V-62004B-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_GETMODE" - GET CURRENT VIDEO MODE NUMBER
- AX = 004Bh
- ES:BX -> WORD ???
- Return: AX = current video mode number
- Note: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- SeeAlso: AX=00B0h
- --------V-62004C-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_GETPAGE" - GET ACTIVE VIDEO PAGE NUMBER
- AX = 004Ch
- Return: AX = active video page (0000h-003Fh)
- Note: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- SeeAlso: AX=0039h,AX=0042h,AX=0043h,AX=0050h,AX=00B2h
- --------V-62004D-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_GETPIXEL" - GET COLOR OF SPECIFIED PIXEL
- AX = 004Dh
- BX = column in screen space
- CX = row in screen space
- Return: AX = color value of pixel (0 to num_colors-1)
- 0000h in text modes
- Note: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- SeeAlso: AX=003Ah,AX=003Dh,AX=008Fh,AX=0090h
- --------V-62004E-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_GETRGB" - GET VIDEO DAC REGISTER CONTENTS
- AX = 004Eh
- ES:BX -> variable pointer record (see #2735)
- CX = DAC register number
- Return: variables updated
- Notes: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- This call is ignored in text modes and CGA/EGA video modes (since
- they do not use DAC registers)
- SeeAlso: AX=0041h,AX=0086h,AX=00ABh
-
- Format of FGDRIVER GETRGB variable pointer record:
- Offset Size Description (Table 2735)
- 00h WORD segment of WORD buffer for red component of DAC register
- 02h WORD offset of WORD buffer for red component
- 04h WORD segment of WORD buffer for green component of DAC register
- 06h WORD offset of WORD buffer for green component
- 08h WORD segment of WORD buffer for blue component of DAC register
- 0Ah WORD offset of WORD buffer for blue component
- --------V-62004F-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_GETVIEW" - GET VIEWPORT EXTREME LIMITS
- AX = 004Fh
- ES:BX -> variable pointer record (see #2736)
- Return: indicated variables updated
- Note: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- SeeAlso: AX=00B5h
-
- Format of FGDRIVER GETVIEW variable pointer record:
- Offset Size Description (Table 2736)
- 00h WORD segment of WORD buffer for viewport left edge (viewport units)
- 02h WORD offset of WORD buffer for viewport left edge (viewport units)
- 04h WORD segment of WORD buffer for viewport right edge (viewport units)
- 06h WORD offset of WORD buffer for viewport right edge (viewport units)
- 08h WORD segment of WORD buffer for viewport top edge (viewport units)
- 0Ah WORD offset of WORD buffer for viewport top edge (viewport units)
- 0Ch WORD segment of WORD buffer for viewport bottom edge (viewp. units)
- 0Eh WORD offset of WORD buffer for viewport bottom edge (viewp. units)
- 10h WORD segment of WORD buffer for viewport left edge (screen space)
- 12h WORD offset of WORD buffer for viewport left edge (screen space)
- 14h WORD segment of WORD buffer for viewport right edge (screen space)
- 16h WORD offset of WORD buffer for viewport right edge (screen space)
- 18h WORD segment of WORD buffer for viewport top edge (screen space)
- 1Ah WORD offset of WORD buffer for viewport top edge (screen space)
- 1Ch WORD segment of WORD buffer for viewport bottom edge (screen space)
- 1Eh WORD offset of WORD buffer for viewport bottom edge (screen space)
- --------V-620050-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_GETVPAGE" - GET VISIBLE VIDEO PAGE NUMBER
- AX = 0050h
- Return: AX = visible video page (0000h-003Fh)
- Note: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- SeeAlso: AX=0043h,AX=004Ch,AX=00B6h
- --------V-620051-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_GETXBOX" - GET WIDTH OF VERTICAL BOX LINES
- AX = 0051h
- Return: AX = width (in pixels) of left and right edges of rectangles
- Note: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- SeeAlso: AX=0006h,AX=0007h,AX=0008h,AX=006Bh
- --------V-620052-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_GETXJOY" - GET HORIZONTAL POSITION OF JOYSTICK
- AX = 0052h
- BX = joystick number (0001h or 0002h)
- Return: AX = horizontal position of joystick
- FFFFh if joystick uninitialized or not present
- Notes: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- The actual coordinates are processor- and joystick-dependent
- You must call "FG_INITJOY" (AX=005Eh) before using this function
- SeeAlso: AX=0009h,AX=0056h,AX=005Eh,AX=0062h,AX=0077h
- --------V-620053-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_GETXJUST" - GET HORIZONTAL JUSTIFICATION
- AX = 0053h
- Return: AX = string justification
- 0000h strings are centered around current graphics X position
- 0001h strings are right-justified at current graphics X position
- FFFFh strings are left-justified at current graphics X position
- Note: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- SeeAlso: AX=006Ch,AX=007Bh
- --------V-620054-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_GETXPOS" - GET GRAPHICS CURSOR COLUMN
- AX = 0054h
- Return: AX = screen space X coordinate of graphics cursor position
- Note: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- SeeAlso: AX=0058h,AX=007Eh,AX=007Fh
- --------V-620055-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_GETYBOX" - GET WIDTH OF HORIZONTAL BOX LINES
- AX = 0055h
- Return: AX = width (in pixels) of top and bottom edges of rectangles
- Note: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- SeeAlso: AX=0006h,AX=0007h,AX=0008h,AX=0063h
- --------V-620056-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_GETYJOY" - GET VERTICAL POSITION OF JOYSTICK
- AX = 0056h
- BX = joystick number (0001h or 0002h)
- Return: AX = vertical position of joystick
- FFFFh if joystick uninitialized or not present
- Notes: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- The actual coordinates are processor- and joystick-dependent
- You must call "FG_INITJOY" (AX=005Eh) before using this function
- SeeAlso: AX=0009h,AX=0052h,AX=005Eh,AX=0062h,AX=0077h
- --------V-620057-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_GETYJUST" - GET VERTICAL JUSTIFICATION
- AX = 0057h
- Return: AX = string justification
- 0000h strings are centered around current graphics Y position
- 0001h strings have top edge at current graphics Y position
- FFFFh strings have bottom edge at current graphics Y position
- Note: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- SeeAlso: AX=0053h,AX=0065h
- --------V-620058-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_GETYPOS" - GET GRAPHICS CURSOR ROW
- AX = 0058h
- Return: AX = screen space Y coordinate of graphics cursor position
- Note: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- SeeAlso: AX=0054h,AX=007Eh,AX=007Fh
- --------V-620059-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_HUSH" - STOP ASYNCHRONOUS SOUND IMMEDIATELY
- AX = 0059h
- Notes: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- This function immediately stops any sounds started with "FG_MUSICB",
- "FG_SOUNDS", or "FG_VOICES"; it is ignored if no asynchronous sound
- is playing
- SeeAlso: AX=005Ah,AX=0081h,AX=00BDh,AX=00DCh
- --------V-62005A-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_HUSHNEXT" - STOP ASYNCHRONOUS SOUND
- AX = 005Ah
- Program: FGDRIVER is the external video driver for the shareware
- Fastgraph/Light by Ted Gruber Software
- Notes: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- This function stops any sounds started with "FG_MUSICB", "FG_SOUNDS",
- or "FG_VOICES" after the current repetition completes; it is ignored
- unless asynchronous sound is continuous
- SeeAlso: AX=0059h,AX=0081h,AX=00BDh,AX=00DCh
- --------V-62005B-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_IMAGEBUF" - SPECIFY TEMPORARY IMAGE BUFFER
- AX = 005Bh
- ES:BX -> buffer to be used when creating or displaying GIF/PCX/PPR/SPR
- images
- CX = size of buffer in bytes or 0000h to use internal buffer
- Notes: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- Fastgraph's internal buffer is 4096 bytes; this function allows the
- application to define a larger buffer which will typically speed
- processing
- SeeAlso: AX=006Ch,AX=006Dh,AX=006Eh,AX=00B9h,AX=00BAh,AX=00BBh
- --------V-62005C-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_IMAGESIZ" - DETERMINE IMAGE STORAGE REQUIREMENT
- AX = 005Ch
- BX = image width in pixels
- CX = image height in pixels
- Note: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- Return: DX:AX = size in bytes of mode-specific bitmap for current video mode
- SeeAlso: AX=003Ch,AX=0098h
- --------V-62005D-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_INITEMS" - INITIALIZE EXPANDED MEMORY USE
- AX = 005Dh
- Return: AX = status
- 0000h successful
- FFFFh expanded memory manager inaccessible or not installed
- Note: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- SeeAlso: AX=0002h,AX=0060h"v4.02"
- --------V-62005E-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_INITJOY" - INITIALIZE JOYSTICK USE
- AX = 005Eh
- BX = joystick number (0001h or 0002h)
- Return: AX = status
- 0000h successful
- FFFFh joystick not connected or no game port
- Notes: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- Fastgraph assumes that the requested joystick is centered at the time
- this function is called
- SeeAlso: AX=0009h,AX=0052h,AX=0056h,AX=0062h,AX=0077h
- --------V-62005F-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_INITPM"??? - (NOT IMPLEMENTED)
- AX = 005Fh
- ???
- Return: ???
- Note: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- --------V-620060-----------------------------
- INT 62 u - FGDRIVER v1.10 only - "FG_DISPPCX" - DISPLAY PCX FILE
- AX = 0060h
- ES:BX -> ASCIZ filename
- CX = flags
- bit 0: use current palette rather than PCX file's palette
- bits 1-15 reserved (0)
- Return: AX = status
- 0000h success
- 0001h file not found
- 0002h file is not a valid PCX file
- Notes: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- This call is ignored in text modes and Hercules low-resolution graphics
- The image is displayed with its upper left corner at the current
- graphics cursor position
- SeeAlso: AX=00B9h
- --------V-620060-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_INITXMS" - INITIALIZE EXTENDED MEMORY USE
- AX = 0060h
- Return: AX = status
- 0000h successful
- FFFFh extended memory manager inaccessible or not installed
- Note: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- SeeAlso: AX=0003h,AX=005Dh
- --------V-620061-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_INSIDE" - CHECK IF POINT INSIDE CONVEX POLYGON
- AX = 0061h
- ES:BX -> vertex array
- CX = number of vertices
- DX = screen space column of point to test
- SI = screen space row of point to test
- Return: AX = result
- 0000h point is outside polygon
- 0001h point is inside polygon
- undefined if not a convex polygon
- Note: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- SeeAlso: AX=0092h,AX=0093h,AX=0094h
- --------V-620062-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_INTJOY" - GET KEYCODES CORRESP TO JOYSTICK POS
- AX = 0062h
- CX = joystick number (0001h or 0002h)
- ES:BX -> variable pointer record (see #2737)
- Notes: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- If the indicated joystick has not been initialized with AX=008Eh, both
- the button code and joystick position will be set to 00h
- If either button is pressed, a button code of 0Dh is returned;
- otherwise, a button code of 00h is returned
- SeeAlso: AX=0009h,AX=0052h,AX=0046h,AX=005Eh,AX=0077h
-
- Format of FGDRIVER INTJOY variable pointer record:
- Offset Size Description (Table 2737)
- 00h WORD segment of BYTE buffer for button code
- 02h WORD offset of BYTE buffer for button code
- 04h WORD segment of BYTE buffer for joystick position
- 06h WORD offset of BYTE buffer for joystick position
- --------V-620063-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_INTKEY" - GET KEYSTROKE, NO WAIT
- AX = 0063h
- ES:BX -> variable pointer record (see #2738)
- Return: variables updated
- Notes: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- If the keyboard buffer is empty, both the ASCII and extended keycodes
- are set to 00h
- SeeAlso: AX=000Ah,AX=0046h,AX=0069h,AX=00DEh,INT 16/AH=01h
-
- Format of FGDRIVER INTKEY variable pointer record:
- Offset Size Description (Table 2738)
- 00h WORD segment of BYTE buffer for ASCII keycode
- 02h WORD offset of BYTE buffer for ASCII keycode
- 04h WORD segment of BYTE buffer for extended keycode
- 06h WORD offset of BYTE buffer for extended keycode
- --------V-620064-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_INVERT" - INVERT ORIENTATION OF BITMAP
- AX = 0064h
- ES:BX -> bitmap
- CX = width of bitmap in bytes
- DX = height of bitmap in pixel rows
- Return: nothing
- Note: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- --------V-620065-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_JUSTIFY" - SET TEXT OUTPUT JUSTIFICATION
- AX = 0065h
- BX = horizontal justification
- (00h centered, 01h right-justified, FFh left-justified)
- CX = vertical justification
- (00h centered, 01h top of characters, FFh bottom of chars)
- Note: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- SeeAlso: AX=000Ch,AX=0037h,AX=0053h,AX=0057h,AX=0096h
- --------V-620066-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_KBINIT" - ENABLE/DISABLE LOW-LEVEL KBD HANDLER
- AX = 0066h
- BX = new state (0000h disabled, 0001h enabled)
- Notes: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- When the low-level handler is enabled, "FG_GETKEY", "FG_INTKEY",
- "FG_WAITKEY", and all other functions calling DOS or BIOS keyboard
- services become unavailable
- SeeAlso: AX=0067h,AX=0068h,AX=0069h
- --------V-620067-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_KBLAST" - GET MOST RECENT SCANCODE PROCESSED
- AX = 0067h
- Return: AX = scancode for keypress most recently processed by FastGraph's
- low-level keyboard handler, or 0000h if no keys since FG_KBINIT
- Note: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- SeeAlso: AX=0066h,AX=0068h,AX=0069h
- --------V-620068-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_KBRESET" - RESET LOW-LEVEL KEYBOARD HANDLER
- AX = 0068h
- Note: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- SeeAlso: AX=0066h,AX=0067h,AX=0069h
- --------V-620069-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_KBTEST" - CHECK WHETHER SPECIFIED KEY PRESSED
- AX = 0069h
- BX = scan code of desired key
- Return: AX = state
- 0000h key is not pressed
- 0001h key is currently pressed
- Notes: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- The low-level keyboard handler must have been enabled with AX=0066h
- SeeAlso: AX=0066h,AX=0067h,INT 16/AH=01h
- --------V-62006A-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_LOADPCX" - LOAD .PCX INTO ACTIVE VIRTUAL BUFFER
- AX = 006Ah
- ES:BX -> ASCIZ filename for PCX image
- CX = control flags
- bit 0: use current palette, overriding stored .PCX palette
- bit 1: load at current graphics position, not stored position
- bit 2: load image from FG_IMAGEBUF buffer instead of .PCX file
- Return: AX = status
- 0000h successful
- 0001h file not found
- 0002h not a .PCX file
- Note: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- SeeAlso: AX=006Ch,AX=00B9h,AX=00D5h
- --------V-62006B-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_LOCATE" - SET TEXT-MODE CURSOR POSITION
- AX = 006Bh
- BX = row
- CX = column
- Notes: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- There are only eight text cursors shared by successive groups of
- eight video pages (pages 0, 8, 16, ... share one cursor, 1, 9, ...
- share the second, etc)
- SeeAlso: AX=0054h,AX=0058h,AX=007Eh,AX=00E0h
- --------V-62006C-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_MAKEPCX" - CREATE PCX FILE FROM SCREEN WINDOW
- AX = 006Ch
- BX = left edge in screen space units
- CX = right edge in screen space units
- DX = top edge in screen space units
- SI = bottom edge in screen space units
- ES:DI -> ASCIZ filename of PCX file to create
- Return: AX = status
- 0000h successful
- 0001h file not created
- Notes: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- The PCX file is created from the specified region of the active video
- page; the left and right edges are adjusted to a byte boundary if
- necessary
- If the specified file already exists, it is overwritten
- This call is ignored in text and Hercules low-resolution graphics modes
- SeeAlso: AX=005Bh,AX=006Dh,AX=006Ah,AX=006Eh,AX=00B9h,AX=00BAh,AX=00BBh
- --------V-62006D-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_MAKEPPR" - CREATE PACKED PIXEL RUN FILE
- AX = 006Dh
- BX = left edge in screen space units
- CX = right edge in screen space units
- DX = top edge in screen space units
- SI = bottom edge in screen space units
- ES:DI -> ASCIZ filename of PPR file to create
- Return: AX = status
- 0000h successful
- 0001h file not created
- Notes: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- The PPR file is created from the specified region of the active video
- page; the left and right edges are adjusted to byte boundaries if
- necessary
- If the specified file already exists, it is overwritten
- This call is ignored in text modes
- SeeAlso: AX=005Bh,AX=006Ch,AX=006Eh,AX=00B9h,AX=00BAh,AX=00BBh
- --------V-62006E-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_MAKESPR" - CREATE STANDARD PIXEL RUN FILE
- AX = 006Eh
- BX = left edge in screen space units
- CX = right edge in screen space units
- DX = top edge in screen space units
- SI = bottom edge in screen space units
- ES:DI -> ASCIZ filename of SPR file to create
- Return: AX = status
- 0000h successful
- 0001h file not created
- Notes: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- The SPR file is created from the specified region of the active video
- page; the left and right edges are adjusted to byte boundaries if
- necessary
- If the specified file already exists, it is overwritten
- This call is ignored in text modes
- SeeAlso: AX=005Bh,AX=006Ch,AX=006Dh,AX=00B9h,AX=00BAh,AX=00BBh
- --------V-62006F-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_MAPRGB" - MAP COLOR COMPONENTS INTO PALETTE VAL
- AX = 006Fh
- BX = red component
- CX = green component
- DX = blue component
- Return: AX = mode-specific palette value corresponding to specified components
- Notes: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- This function is only meaningful in 16-color graphics modes
- SeeAlso: AX=004Eh,AX=00B3h
- --------V-620070-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_MEASURE" - GET DELAY UNITS PER CLOCK TICK
- AX = 0070h
- Return: AX = delay units per clock tick (processor-dependent)
- Notes: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- These delay units are used by "FG_STALL" (see AX=00BFh)
- SeeAlso: AX=00BFh
- --------V-620071-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_MEMAVAIL" - QUERY AMOUNT OF FREE MEMORY
- AX = 0071h
- Return: DX:AX = number of bytes of conventional memory available
- Note: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- SeeAlso: AX=005Dh,AX=0072h
- --------V-620072-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_MEMORY" - GET SIZE OF VIDEO MEMORY
- AX = 0072h
- Return: AX = size of video memory in KB
- Notes: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- You must first call "FG_SVGAINIT" (see AX=00C1h) before using this
- function
- SeeAlso: AX=0071h
- --------V-620073-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_MOUSE256" - DEFINE 256-COLOR MOUSE CURSOR
- AX = 0073h
- ES:BX -> 512-byte cursor definition
- CX = X offset of hot-spot within mouse cursor
- DX = Y offset of hot-spot within mouse cursor
- Return: nothing
- Notes: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- the cursor definition array consists of 256 bytes defining the 16x16
- screen mask, followed by another 256 bytes definining the 16x16
- cursor mask
- SeeAlso: AX=0074h,AX=0075h,AX=007Bh
- --------V-620074-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_MOUSEBUT" - GET MOUSE BUTTON PRESS/RELEASE CNTS
- AX = 0074h
- CX = mouse button (1 = left press, 2 = right press, 3 = middle press,
- -1=left release, -2=right release, -3=middle release)
- ES:BX -> variable pointer record (see #2739)
- Return: variables updated
- Notes: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- This function returns the count of presses or releases since the last
- call to this function; if the count is zero, row and column will
- also be zero
- SeeAlso: AX=0075h,AX=0077h,AX=007Ah
-
- Format of FGDRIVER MOUSEBUT variable pointer record:
- Offset Size Description (Table 2739)
- 00h WORD segment of WORD buffer for press/release count
- 02h WORD offset of WORD buffer for press/release count
- 04h WORD segment of WORD buffer for screen space col of last press/rls
- 06h WORD offset of WORD buffer for screen space col of last press/rels
- 08h WORD segment of WORD buffer for screen space row of last press/rls
- 0Ah WORD offset of WORD buffer for screen space row of last press/rls
- --------V-620075-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_MOUSECUR" - SPECIFY TEXT-MODE MOUSE CURSOR
- AX = 0075h
- BX = screen mask
- CX = cursor mask
- Notes: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- This call is ignored in graphics modes
- SeeAlso: AX=007Bh,AX=007Dh
- --------V-620076-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_MOUSEFIN" - UNHOOK FASTGRAPH MOUSE HANDLER
- AX = 0076h
- Notes: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- This function should be called before switching back to text mode if
- "FG_MOUSEINI" was called while in an SVGA graphics mode
- SeeAlso: AX=0077h
- --------V-620077-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_MOUSEINI" - INITIALIZE MOUSE SUPPORT
- AX = 0077h
- Return: AX = status
- 0002h two-button mouse
- 0003h three-button mouse
- FFFFh initialization failed
- Notes: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- After this call, the mouse cursor is invisible
- SeeAlso: AX=0076h,AX=0078h,AX=007Ch
- --------V-620078-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_MOUSELIM" - SPECIFY MOUSE CURSOR LIMITS
- AX = 0078h
- BX = left-most position allowed for mouse cursor
- CX = right-most position allowed
- DX = top-most position allowed
- SI = bottom-most position allowed
- Note: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- SeeAlso: AX=0077h,AX=0079h,INT 33/AX=0007h,INT 33/AX=0008h
- --------V-620079-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_MOUSEMOV" - SET MOUSE CURSOR POSITION
- AX = 0079h
- BX = new column
- CX = new row
- Notes: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- This function will not move the mouse cursor outside the bounding box
- specified with AX=009Bh
- SeeAlso: AX=0078h,AX=007Ah,INT 33/AX=0004h
- --------V-62007A-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_MOUSEPOS" - GET CURRENT MOUSE POSITION
- AX = 007Ah
- ES:BX -> variable pointer record (see #2740)
- Note: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- SeeAlso: AX=0079h
-
- Format of FGDRIVER MOUSEPOS variable pointer record:
- Offset Size Description (Table 2740)
- 00h WORD segment of WORD buffer for mouse column
- 02h WORD offset of WORD buffer for mouse column
- 04h WORD segment of WORD buffer for mouse row
- 06h WORD offset of WORD buffer for mouse row
- 08h WORD segment of WORD buffer for button status
- 0Ah WORD offset of WORD buffer for button status
- Note: button status: bit 0 = left button, bit 1 = right, bit 2 = middle
- --------V-62007B-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_MOUSEPTR" - SPECIFY GRAPH-MODE MOUSE CURSOR
- AX = 007Bh
- ES:BX -> masks (16-byte screen mask followed by 16-byte cursor mask)
- CX = X offset of hot spot from upper left corner
- DX = Y offset of hot spot from upper left corner
- Notes: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- This call is ignored in text modes
- SeeAlso: AX=0073h,AX=0075h,INT 33/AX=0009h
- --------V-62007C-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_MOUSESPD" - SET MOUSE CURSOR SPEED
- AX = 007Ch
- BX = horizontal mickeys per eight pixels of movement (default 16)
- CX = vertical mickeys per eight pixels of movement (default 16)
- Note: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- SeeAlso: INT 33/AX=000Fh,INT 33/AX=001Ah
- --------V-62007D-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_MOUSEVIS" - SET MOUSE CURSOR VISIBILITY
- AX = 007Dh
- BX = new state (0000h invisible, 0001h visible)
- Note: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- SeeAlso: AX=0077h,INT 33/AX=0001h,INT 33/AX=0002h
- --------V-62007E-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_MOVE" - SET GRAPHICS CURSOR POSITION
- AX = 007Eh
- BX = new column
- CX = new row
- Notes: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- This call is ignored in text modes
- SeeAlso: AX=0054h,AX=0058h,AX=006Bh,AX=0079h,AX=007Fh,AX=00E0h
- --------V-62007F-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_MOVEREL" - ADJUST GRAPHICS CURSOR POSITION
- AX = 007Fh
- BX = column offset
- CX = row offset
- Notes: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- This call is ignored in text modes
- SeeAlso: AX=0054h,AX=0058h,AX=007Eh
- --------V-620080-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_MUSIC" - PLAY SERIES OF NOTES
- AX = 0080h
- ES:BX -> '$'-terminated music string in BASIC PLAY format
- Return: after music completed
- Notes: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- This call is ignored if asynchronous sound (AX=00A5h,AX=00A8h,
- AX=00AAh) is already in progress
- SeeAlso: AX=0081h,AX=00BCh,AX=00DBh
- --------V-620081-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_MUSICB" - PLAY SERIES OF NOTES IN BACKGROUND
- AX = 0081h
- CX = number of repetitions (negative = continuous play)
- ES:BX -> '$'-terminated music string in BASIC PLAY format
- Notes: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- This call is ignored if asynchronous sound (AX=00A5h,AX=00A8h,
- AX=00AAh) is already in progress
- SeeAlso: AX=0059h,AX=0081h,AX=00BDh,AX=00DCh
- --------V-620082-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_NUMLOCK" - GET STATE OF NUMLOCK KEY
- AX = 0082h
- Return: AX = NumLock state (0000h off, 0001h on)
- Note: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- SeeAlso: AX=000Ah,AX=00A4h,AX=00A8h,AX=00B1h
- --------V-620083-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_PACK" - CONVERT PIXEL-PER-BYTE TO PACKED BITMAP
- AX = 0083h
- ES:BX -> variable pointer record (see #2741)
- CX = width of bitmap in pixels
- DX = height of bitmap in pixels
- Return: result bitmap buffer updated
- SeeAlso: AX=00CBh
-
- Format of FGDRIVER PACK variable pointer record:
- Offset Size Description (Table 2741)
- 00h WORD segment of source (mode-independent) bitmap
- 02h WORD offset of source (mode-independent) bitmap
- 04h WORD segment of buffer for result (mode-specific) bitmap
- 06h WORD offset of buffer for result (mode-specific) bitmap
- --------V-620084-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_PAGESIZE" - GET VIDEO PAGE SIZE FOR CURR MODE
- AX = 0084h
- Return: DX:AX = page size in bytes
- Note: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- SeeAlso: AX=0072h
- --------V-620085-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_PAINT" - FLOOD CLOSED REGION WITH COLOR
- AX = 0085h
- BX = column
- CX = row
- Notes: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- This function fills an arbitrary closed region around the specified
- point with the current color; the screen edges are not considered
- region boundaries
- This call is ignored in text modes
- SeeAlso: AX=0035h
- --------V-620086-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_PALETTE" - SET PALETTE / SET VIDEO DAC REGISTER
- AX = 0086h
- ---CGA 4-color graphics---
- BX = CGA paletee number
- CX = background color
- ---CGA 2-color graphics---
- BX ignored
- CX = foreground color
- ---16-color graphics---
- BX = palette register number
- CX = palette value
- ---256-color graphics---
- BX = DAC register number
- CX = DAC value
- Notes: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- This function is ignored in text modes and Hercules graphics modes
- Few EGA/VGA adapters correctly set the foreground color in CGA mode 6
- SeeAlso: AX=0041h,AX=004Eh,AX=0087h,AX=00ABh
- --------V-620087-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_PALETTES" - SET ALL PALETTE REGISTERS
- AX = 0087h
- ES:BX -> array of 16 WORDs containing values for palette registers
- (or first 16 DAC registers in 256-color modes)
- Notes: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- This function is ignored in text modes, CGA and Hercules graphics modes
- SeeAlso: AX=0041h,AX=004Eh,AX=0086h,AX=00ABh
- --------V-620088-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_PAN" - SET SCREEN ORIGIN
- AX = 0088h
- BX = new column for screen origin
- CX = new row for screen origin
- Note: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- SeeAlso: AX=00B2h
- --------V-620089-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_PATTERN" - SPECIFY DISPLAY PATTERN FOR COLOR
- AX = 0089h
- BX = index of pattern to define
- CX = number of predefined display pattern
- Notes: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- When displaying a pixel run map, Fastgraph uses the pattern associated
- with each color index rather than displaying the actual color
- This call has no effect in text and 256-color graphics modes
- SeeAlso: AX=0023h,AX=0045h
- --------V-62008A-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_PCXHEAD" - GET PCX FILE HEADER
- AX = 008Ah
- ES:BX -> variable pointer record (see #2742)
- Return: AX = status
- 0000h successful
- FFFEh not a PCX file
- FFFFh file does not exist
- Note: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- SeeAlso: AX=008Bh,AX=00B9h
-
- Format of FGDRIVER PCXHEAD variable pointer record:
- Offset Size Description (Table 2742)
- 00h WORD segment of ASCIZ filename
- 02h WORD offset of ASCIZ filename
- 04h WORD segment of 128-byte buffer for PCX header
- 06h WORD offset of 128-byte buffer for PCX header
- --------V-62008B-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_PCXMODE" - GET OPTIMAL VIDEO MODE FOR DISPLAY
- AX = 008Bh
- ES:BX -> PCX header (see AX=008Ah)
- Return: AX = optimal video mode for PCX file
- FFFEh not a valid PCX header
- FFFFh unable to determine compatible video mode
- Note: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- SeeAlso: AX=008Ah,AX=00B9h
- --------V-62008C-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_PCXPAL" - GET PALETTE STORED IN PCX FILE
- AX = 008Ch
- ES:BX -> variable pointer record (see #2743)
- Return: AX = number of colors in palette (16 or 256) or
- FFFEh not a valid PCX file
- FFFFh file not found
- Note: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- SeeAlso: AX=008Dh
-
- Format of FGDRIVER PCXPAL variable pointer record:
- Offset Size Description (Table 2743)
- 00h WORD segment of ASCIZ .PCX filename
- 02h WORD offset of ASCIZ .PCX filename
- 04h WORD segment of buffer for .PCX palette RGB triples
- 06h WORD offset of buffer for .PCX palette RGB triples
- Note: the buffer for the palette must hold at least three times as many bytes
- as there are colors in the palette
- SeeAlso: #2744
- --------V-62008D-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_PCXRANGE" - GET EXTENT OF PCX IMAGE
- AX = 008Dh
- ES:BX -> variable pointer record (see #2744)
- Return: indicated variables updated; if the indicated header is not valid,
- all of the coordinate variables are set to FFFFh
- Note: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- SeeAlso: AX=008Ch
-
- Format of FGDRIVER PCXRANGE variable pointer record:
- Offset Size Description (Table 2744)
- 00h WORD segment of 128-byte PCX file header
- 02h WORD offset of 128-byte PCX file header
- 04h WORD segment of WORD buffer for X coordinate of image's left edge
- 04h WORD offset of WORD buffer for X coordinate of image's left edge
- 08h WORD segment of WORD buffer for X coordinate of image's right edge
- 0Ah WORD offset of WORD buffer for X coordinate of image's right edge
- 0Ch WORD segment of WORD buffer for Y coordinate of image's top edge
- 0Eh WORD offset of WORD buffer for Y coordinate of image's top edge
- 10h WORD segment of WORD buffer for X coordinate of image's bottom edge
- 12h WORD offset of WORD buffer for X coordinate of image's bottom edge
- SeeAlso: #2743
- --------V-62008E-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_PLAYING" - DETERMINE WHETHER ASYNC SOUND ACTIVE
- AX = 008Eh
- Return: AX = sound state (0 = no asynchronous sound, 1 = async sound playing)
- Note: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- SeeAlso: AX=0059h,AX=0081h,AX=00BDh,AX=00DCh
- --------V-62008F-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_POINT" - DISPLAY A PIXEL
- AX = 008Fh
- BX = column
- CX = row
- Notes: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- This call is ignored in text modes
- SeeAlso: AX=0006h,AX=001Dh,AX=004Dh,AX=0090h
- --------V-620090-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_POINTX" - DISPLAY A PIXEL IN XOR MODE
- AX = 0090h
- BX = column
- CX = row
- Notes: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- This call is ignored in text modes
- SeeAlso: AX=004Dh,AX=008Fh
- --------V-620091-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_POLYEDGE" - SPECIFY INCLUSION OF FINAL PIXELS
- AX = 0091h
- BX = edge flag
- 0000h include right- and bottom-edge pixels when drawing polygons
- with FG_POLYFILL
- 0001h (default) exclue right- and bottom-edge pixels
- SeeAlso: AX=0092h
- --------V-620092-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_POLYFILL" - DRAW A FILLED CONVEX POLYGON
- AX = 0092h
- CX = number of vertices
- ES:BX -> variable pointer record (see #2745)
- Notes: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- The vertex array consists of pairs of words specifying the X and Y
- coordinates of each vertex; the work array is used internally and
- must contain at least four times as many bytes as the polygon is
- high in pixels
- This function is ignored in text modes
- If the polygon is non-convex, only a portion of it may be filled
- SeeAlso: AX=000Eh,AX=0027h,AX=0091h,AX=0093h,AX=0094h,AX=0095h
-
- Format of FGDRIVER POLYFILL variable pointer record:
- Offset Size Description (Table 2745)
- 00h WORD segment of vertex array (see #2747)
- 02h WORD offset of vertex array
- 04h WORD segment of work array
- 06h WORD offset of work array
- SeeAlso: #2746
- --------V-620093-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_POLYGON" - DRAW AN UNFILLED POLYGON
- AX = 0093h
- CX = number of vertices in polygon
- ES:BX -> variable pointer record (see #2746)
- Notes: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- This call is ignored in text modes
- SeeAlso: AX=0091h,AX=0092h,AX=0094h,AX=0095h
-
- Format of FGDRIVER POLYGON variable pointer record:
- Offset Size Description (Table 2746)
- 00h WORD segment of WORD array containing vertex columns
- 02h WORD offset of WORD array containing vertex columns
- 04h WORD segment of WORD array containing vertex rows
- 06h WORD offset of WORD array containing vertex rows
- SeeAlso: #2745
- --------V-620094-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_POLYLINE" - DRAW AN UNFILLED POLYGON
- AX = 0094h
- CX = number of vertices in polygon
- ES:BX -> vertex array (see #2747)
- Notes: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- This function is equivalent to "FG_POLYGON", but uses only a single
- array to define the vertices
- This call is ignored in text modes
- SeeAlso: AX=008Fh,AX=0092h,AX=0093h,AX=0095h
-
- Format of FGDRIVER POLYFILL/POLYLINE vertex array element:
- Offset Size Description (Table 2747)
- 00h WORD column
- 02h WORD row
- SeeAlso: #2746
- --------V-620095-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_POLYOFF" - DEFINE POLYGON DRAWING OFFSET
- AX = 0095h
- BX = horizontal offset (default 0)
- CX = vertical offset (default 0)
- Desc: define the offsets applied to all vertices of polygons drawn with
- "FG_POLYFILL" or "FG_POLYLINE"
- Note: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- SeeAlso: AX=0092h,AX=0094h
- --------V-620096-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_PRINT" - DISPLAY STRING OF HARDWARE CHARACTERS
- AX = 0096h
- CX = length of string
- ES:BX -> string to display
- Notes: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- The string is displayed in the current color, and the graphics cursor
- is updated to be just to the right of the last displayed character
- This function is ignored in text modes
- SeeAlso: AX=000Ch,AX=0037h,AX=0065h,AX=0097h
- --------V-620097-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_PRINTC" - DISPLAY STRING OF HW CHARS (CLIPPED)
- AX = 0097h
- CX = length of string
- ES:BX -> string to display
- Notes: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- The string is displayed in the current color, and the graphics cursor
- is updated to be just to the right of the last displayed character;
- only the portion of the string that lies within the current clipping
- area is displayed
- This function is ignored in text modes
- SeeAlso: AX=0096h
- --------V-620098-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_PUTBLOCK" - RESTORE RECTANGLE OF DISPLAY
- AX = 0098h
- ES:BX -> buffer containing previously-saved image
- CX = left edge
- DX = right edge
- SI = top edge
- DI = bottom edge
- Notes: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- In text modes, coordinates are character positions; in graphics modes,
- they are defined in screen space, and the left and right edges are
- adjusted to a byte boundary if necessary
- SeeAlso: AX=003Ch,AX=0099h
- --------V-620099-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_PUTIMAGE" - DISPLAY MODE-SPECIFIC BITMAP IMAGE
- AX = 0099h
- ES:BX -> buffer containing mode-specific bitmap
- CX = width in bytes
- DX = height in pixel rows
- Notes: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- The bitmap is displayed with its lower left corner at the graphics
- cursor position; color 0 is NOT treated as transparent
- SeeAlso: AX=0011h,AX=0024h,AX=0036h,AX=0044h,AX=0098h
- --------V-62009A-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_QUIET" - STOP CONTINUOUS SYNCHRONOUS SOUND
- AX = 009Ah
- Notes: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- This call has no effect if there is no continuous sound playing
- SeeAlso: AX=0059h,AX=0080h,AX=00BDh,AX=00DCh
- --------V-62009B-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_RECT" - DRAW UNFILLED RECTANGLE IN SCREEN SPACE
- AX = 009Bh
- BX = left edge column
- CX = right edge column
- DX = top edge row
- SI = bottom edge row
- Note: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- SeeAlso: AX=0006h,AX=0012h,AX=0023h,AX=003Ch
- --------V-62009C-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_RESET" - ERASE SCREEN AND RESTORE SCREEN ATTR
- AX = 009Ch
- Notes: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- This call is ignored in graphics modes
- The screen attributes are only restored if ANSI.SYS is loaded
- SeeAlso: AX=0028h,AX=00B0h
- --------V-62009D-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_RESIZE" - SET GRAPHICS MODE VIDEO PAGE SIZE
- AX = 009Dh
- BX = new page width in pixels
- CX = new page height in pixels
- Notes: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- The visible page must be set to 0000h before making this call
- The mouse, joysticks, expanded memory, and extended memory must be
- reinitialized after this call
- SeeAlso: AX=0084h,AX=00ACh
- --------V-62009E-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_RESTORE" - COPY REGION FROM HIDDEN TO VIS PAGE
- AX = 009Eh
- BX = left edge column
- CX = right edge column
- DX = top edge row
- SI = bottom edge row
- Notes: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- The left and right edges are adjusted to byte boundaries if necessary
- SeeAlso: AX=00A2h,AX=00C6h
- --------V-62009F-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_RESUME" - RESTART ASYNCHRONOUS SOUND
- AX = 009Fh
- Note: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- SeeAlso: AX=00BDh,AX=00C0h
- --------V-6200A0-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_REVIMAGE" - DISPLAY REVERSED IMAGE (BITMAP)
- AX = 00A0h
- ES:BX -> mode-specific bitmap
- CX = width of bitmap in bytes
- DX = height of bitmap in pixel rows
- Notes: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- This call is ignored in text modes
- The image is drawn with its lower left corner at the current graphics
- cursor position
- SeeAlso: AX=0011h,AX=0024h,AX=0036h,AX=0044h,AX=00A1h,AX=00A9h,AX=00B9h
- --------V-6200A1-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_REVMASK" - DISPLAY REVERSED IMAGE (MASKING MAP)
- AX = 00A1h
- ES:BX -> array containing image stored as a masking map (see #2724)
- CX = number of pixel runs in masking map
- DX = width of masking map in pixels
- Notes: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- This call is ignored in text modes and in native EGA and VGA graphics
- modes
- The image is drawn with its lower left corner at the current graphics
- cursor position
- SeeAlso: AX=0010h,AX=001Fh,AX=0034h,AX=00A0h,AX=00A9h,AX=00C5h
- --------V-6200A2-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_SAVE" - COPY REGION FROM VISIBLE TO HIDDEN PAGE
- AX = 00A2h
- BX = left edge column
- CX = right edge column
- DX = top edge row
- SI = bottom edge row
- Notes: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- The left and right edges are adjusted to byte boundaries if necessary
- SeeAlso: AX=009Eh,AX=00C6h
- --------V-6200A3-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_SCALE" - SCALE BITMAP
- AX = 00A3h
- ES:BX -> variable pointer record (see #2748)
- CX = width of source bitmap in pixels (0 < width <= 1024)
- DX = height of source bitmap in pixels (0 < height <= 1024)
- SI = desired width of scaled bitmap (0 < width <= 1024)
- DI = desired height of scaled bitmap (0 < height <= 1024)
- Return: nothing
- SeeAlso: AX=00B7h
-
- Format of FGDRIVER SCALE variable pointer record:
- Offset Size Description (Table 2748)
- 00h WORD segment of source bitmap (one pixel per byte)
- 02h WORD offset of source bitmap
- 04h WORD segment of buffer for resulting scaled bitmap
- 06h WORD offset of buffer for resulting scaled bitmap
- --------V-6200A4-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_SCRLOCK" - GET STATE OF SCROLL LOCK KEY
- AX = 00A4h
- Return: AX = ScrollLock state (0000h off, 0001h on)
- Program: FGDRIVER is the external video driver for the shareware
- Fastgraph/Light by Ted Gruber Software
- Note: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- SeeAlso: AX=000Ah,AX=0082h,AX=00A8h,AX=00B1h
- --------V-6200A5-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_SCROLL" - VERTICALLY SCROLL SCREEN REGION
- AX = 00A5h
- BX = left edge column
- CX = right edge column
- DX = top edge row
- SI = bottom edge row
- DI = number of pixels by which to scroll (positive scrolls up,
- negative scrolls down)
- ES = type of scroll
- 0000h circular (rows scrolled off are copied to vacated rows)
- else vacated rows are filled with the current color
- Notes: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- In graphics modes, the left and right edges are adjusted to byte
- boundaries if necessary
- Circular scrolling uses part of the hidden page as a workspace
- SeeAlso: AX=0088h,AX=00B2h
- --------V-6200A6-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_SETATTR" - SET TEXT-MODE CHARACTER ATTRIBUTE
- AX = 00A6h
- BX = foreground
- CX = background
- DX = blink (0000h nonblinking, 0001h blink)
- Notes: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- This call is ignored in graphics modes
- SeeAlso: AX=000Bh,AX=003Ah,AX=0048h
- --------V-6200A7-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_SETBANKS" - SET SVGA READ AND WRITE BANKS
- AX = 00A7h
- BX = memory bank from which to read (FFFFh leave unchanged)
- CX = memory bank to which to write (FFFFh leave unchanged)
- Note: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- SeeAlso: AX=003Bh
- --------V-6200A8-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_SETCAPS" - SET STATE OF CAPSLOCK KEY
- AX = 00A8h
- BX = new state (0000h off, 0001h on)
- Note: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- SeeAlso: AX=000Ah,AX=0082h,AX=00A4h,AX=00B1h
- --------V-6200A9-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_SETCLIP" - SET CLIPPING REGION
- AX = 00A9h
- BX = left edge of clipping region
- CX = right edge of clipping region
- DX = top edge of clipping region
- SI = bottom edge of clipping region
- Note: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- SeeAlso: AX=0010h,AX=001Fh,AX=0034h,AX=003Eh,AX=00A1h,AX=00C5h
- --------V-6200AA-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_SETCOLOR" - SET CURRENT COLOR
- AX = 00AAh
- BX = new color index (or text attribute in text modes)
- Note: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- SeeAlso: AX=0018h,AX=0040h,AX=0045h
- --------V-6200AB-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_SETDACS" - SET VIDEO DAC CONTENTS
- AX = 00ABh
- CX = number of DAC registers to set (0001h to 0100h)
- DX = starting DAC register number (0000h to 00FFh)
- ES:BX -> buffer containing DAC red/green/blue triples
- Notes: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- The register number wraps back to zero after reaching FFh
- This call has no effect in text modes or graphics modes below 11h
- SeeAlso: AX=0041h,AX=004Eh,AX=0086h,INT 10/AX=1012h
- --------V-6200AC-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_SETENTRY" - SET TYPE AND ADDRESS OF VIDEO PAGE
- AX = 00ACh
- BX = page number (00h-3Fh)
- CX = page address
- DX = page type (see #2733 at AX=0042h)
- Note: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- SeeAlso: AX=0038h,AX=0042h,AX=00B0h
- --------V-6200AD-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_SETFUNC" - SET LOGICAL OPERATION FOR VIDEO OPS
- AX = 00ADh
- BX = operation
- 0000h replacement
- 0001h AND
- 0002h OR
- 0003h XOR
- Notes: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- This function is only available in native EGA/VGA graphics modes
- (0Dh to 12h)
- SeeAlso: AX=001Eh,AX=008Fh
- --------V-6200AE-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_SETHPAGE" - SET HIDDEN VIDEO PAGE
- AX = 00AEh
- BX = new hidden page (0000h to 003Fh)
- Notes: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- The specified page must be a physical page or a virtual page
- SeeAlso: AX=0043h,AX=00B2h,AX=00B6h
- --------V-6200AF-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_SETLINES" - SET TEXT ROWS ON SCREEN
- AX = 00AFh
- BX = new screen size (25, 43, 50)
- Note: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- SeeAlso: AX=0047h
- --------V-6200B0-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_SETMODE" - SELECT VIDEO MODE AND INITIALIZE
- AX = 00B0h
- BX = new video mode or FFFFh for current mode (see #2749)
- ES:DX -> WORD shareware splash screen flag
- Notes: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- This call resets the active video page to page 0000h, the clipping
- region to the entire screen, text rows to 25, etc.
- in the shareware version, FGDRIVER sets the word pointed at by ES:DX
- to 9090h after it shows the shareware announcement to the user
- SeeAlso: AX=004Bh,INT 10/AH=00h
-
- (Table 2749)
- Values for FGDRIVER video mode:
- 00h-07h standard BIOS modes
- 09h PCjr/Tandy1000 320x200x16
- 0Bh Hercules graphics 720x348
- 0Ch Hercules graphics 320x200
- 0Dh-13h standard BIOS modes
- 14h VGA graphics 320x200x256
- 15h VGA graphics 320x400x256
- 16h VGA graphics 320x240x256
- 17h VGA graphics 320x480x256
- 18h SVGA graphics 640x400x256
- 19h SVGA graphics 640x480x256
- 1Ah SVGA graphics 800x600x256
- 1Bh SVGA graphics 1024x768x256
- 1Ch SVGA graphics 800x600x16
- 1Dh SVGA graphics 1024x768x16
- --------V-6200B1-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_SETNUM" - SET STATE OF NUMLOCK KEY
- AX = 00B1h
- BX = new state (0000h off, 0001h on)
- Note: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- SeeAlso: AX=000Ah,AX=0082h,AX=00A4h,AX=00A8h
- --------V-6200B2-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_SETPAGE" - SET ACTIVE VIDEO PAGE
- AX = 00B2h
- BX = new video page (0000h to 003Fh)
- Notes: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- The specified page must be a physical or virtual page
- SeeAlso: AX=0039h,AX=0042h,AX=0043h,AX=0050h,AX=0088h
- --------V-6200B3-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_SETRGB" - SET VIDEO DAC REGISTER CONTENTS
- AX = 00B3h
- BX = palette or DAC register number
- CX = red color component
- DX = green component
- SI = blue component
- Notes: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- The register number may be negative for Tandy, PCjr, and 200-line
- EGA graphics modes to specify an intense color
- This call has no effect in text, CGA graphics, and Hercules graphics
- modes
- SeeAlso: AX=004Eh
- --------V-6200B4-----------------------------
- INT 62 u - FGDRIVER v4.02 - UNUSED
- AX = 00B4h
- Return: AX = 0000h
- Note: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- --------V-6200B5-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_SETVIEW" - DEFINE VIEWPORT
- AX = 00B5h
- ES:BX -> variable record (see #2750)
- CX = viewport's top edge in screen space
- DX = viewport's bottom edge in screen space
- Return: nothing
- Note: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723)
- SeeAlso: AX=004Fh
-
- Format of FGDRIVER SETVIEW variable record:
- Offset Size Description (Table 2750)
- 00h WORD viewport's left edge in viewport units
- 02h WORD viewport's right edge in viewport units
- 04h WORD viewport's top edge in viewport units
- 06h WORD viewport's bottom edge in viewport units
- 08h WORD viewport's left edge in screen space
- 0Ah WORD viewport's right edge in screen space
- --------V-6200B6-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_SETVPAGE" - SET VISIBLE VIDEO PAGE
- AX = 00B6h
- BX = new video page (0000h to 003Fh)
- Notes: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- The specified page must be a physical or virtual page
- SeeAlso: AX=0043h,AX=00AEh,AX=00B2h
- --------V-6200B7-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_SHEAR" - SHEAR UNPACKED BITMAP
- AX = 00B7h
- ES:BX -> variable pointer record (see #2751)
- CX = bitmap width (0 < width <= 1024)
- DX = bitmap height (0 < height <= 1024)
- SI = size of resulting image (width for horiz. shear, height for vert.)
- DI = shear type
- 0000h horizontal shear to left
- 0001h horizontal shear to right
- 0002h vertical shear to left (left edge stretched up)
- 0003h vertical shear to right (right edge stretched up)
- Return: nothing
- Note: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723)
- SeeAlso: AX=00A3h
-
- Format of FGDRIVER SHEAR variable pointer record:
- Offset Size Description (Table 2751)
- 00h WORD segment of source bitmap
- 02h WORD offset of source bitmap
- 04h WORD segment of buffer for resulting bitmap
- 06h WORD offset of buffer for resulting bitmap
- --------V-6200B8-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_SHOWFLIC" - DISPLAY IMAGE FROM FLI/FLC FILE
- AX = 00B8h
- ES:BX -> ASCIZ filename for FLI/FLC file
- CX = number of times to display image file (0000h = continuously)
- DX = control flags (see #2728 at AX=0031h)
- Return: AX = status
- 0000h successful
- 0001h file not found
- 0002h not a valid FLI/FLC file
- Notes: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723)
- the FLI/FLC display may be stopped by the user by pressing Esc
- SeeAlso: AX=0030h,AX=0031h,AX=00B9h
- --------V-6200B9-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_SHOWPCX" - DISPLAY IMAGE FROM PCX FILE
- AX = 00B9h
- ES:BX -> ASCIZ filename of PCX image
- CX = flags (see #2752)
- Return: AX = status
- 0000h success
- 0001h file not found
- 0002h not a PCX file
- Notes: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- This function is ignored in text modes and Hercules low-res graphics
- SeeAlso: AX=005Bh,AX=0060h"1.10",AX=006Ch,AX=006Dh,AX=006Eh,AX=00B8h,AX=00BAh
- SeeAlso: AX=00BBh
-
- Bitfields for FGDRIVER flags:
- Bit(s) Description (Table 2752)
- 0 use current palette rather than PCX file's palette
- 1 display image at cursor position instead of position in PCX header
- 2-15 reserved
- --------V-6200BA-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_SHOWPPR" - DISPLAY IMAGE FROM PPR FILE
- AX = 00BAh
- ES:BX -> ASCIZ filename of packed pixel run image
- CX = width in pixels (nonzero)
- Return: AX = status
- 0000h successful
- 0001h file not found
- Notes: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- The image is displayed with its lower left corner at the current
- graphics cursor position
- This function is ignored in text modes and 256-color graphics modes
- SeeAlso: AX=005Bh,AX=006Ch,AX=006Dh,AX=006Eh,AX=00B9h,AX=00BBh
- --------V-6200BB-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_SHOWSPR" - DISPLAY IMAGE FROM SPR FILE
- AX = 00BBh
- ES:BX -> ASCIZ filename of standard pixel run image
- CX = width in pixels (nonzero)
- Return: AX = status
- 0000h successful
- 0001h file not found
- Notes: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- The image is displayed with its lower left corner at the current
- graphics cursor position
- This function is ignored in text modes
- SeeAlso: AX=005Bh,AX=006Ch,AX=006Dh,AX=006Eh,AX=00B9h,AX=00BAh
- --------V-6200BC-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_SOUND" - MAKE SOUND FOR SPECIFIED DURATION
- AX = 00BCh
- BX = frequency in Hertz (18-32767)
- CX = duration in clock ticks (0000h or negative for continuous sound)
- Notes: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- This call is ignored if asynchronous sound (AX=00A5h,AX=00A8h,
- AX=00AAh) is already in progress
- SeeAlso: AX=0059h,AX=0080h,AX=00BDh,AX=00C0h,AX=00DBh
- --------V-6200BD-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_SOUNDS" - PLAY SOUNDS IN BACKGROUND
- AX = 00BDh
- CX = number of times to cycle through sound list
- ES:BX -> sounds array (see #2753)
- Notes: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- This call is ignored if asynchronous sound (AX=00A5h,AX=00A8h,
- AX=00AAh) is already in progress
- SeeAlso: AX=0059h,AX=0081h,AX=00BCh,AX=00C0h,AX=00DCh
-
- Format of FGDRIVER sounds array element:
- Offset Size Description (Table 2753)
- 00h WORD frequency of sound in Hertz (0000h ends array)
- 02h WORD duration of sound in clock ticks
- --------V-6200BE-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_SPLIT" - ENABLE/DISABLE SPLIT SCREEN ENVIRONMNT
- AX = 00BEh
- BX = beginning row for bottom half of split-screen
- Note: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723)
- --------V-6200BF-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_STALL" - PAUSE FOR SPECIFIED DURATION
- AX = 00BFh
- BX = duration in processor-dependent delay units (see AX=0070h)
- Return: after delay elapses
- Note: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- SeeAlso: AX=0070h,INT 2F/AX=1224h
- --------V-6200C0-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_SUSPEND" - TEMPORARILY STOP ASYNCHRONOUS SOUND
- AX = 00C0h
- Notes: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- This call has no effect if there is no asynchronous sound in progress
- The program must not exit while sound is suspended
- SeeAlso: AX=0059h,AX=0080h,AX=00BDh,AX=00C0h,AX=00DBh
- --------V-6200C1-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_SVGAINIT" - INITIALIZE FASTGRAPH SVGA KERNEL
- AX = 00C1h
- BX = method (see #2754)
- Return: AX = status
- 0000h no VESA BIOS or supported SVGA chipset
- 0001h using VESA BIOS
- 0002h-0016h specific chipset being used (same as "method" below)
- Notes: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- This function must be called before attempting to set SVGA graphics
- modes (18h to 1Dh) or using "FG_BESTMODE", "FG_TESTMODE", or
- "FG_MEMORY"
- SeeAlso: AX=0025h,AX=00C2h,AX=00C3h
-
- (Table 2754)
- Values for FGDRIVER SVGA method:
- 0000h autodetect, give chipset-specific code priority over VESA
- 0001h autodetect, give VESA priority over chipset-specific code
- 0002h Ahead type "A"
- 0003h Ahead type "B"
- 0004h ATI 18800
- 0005h ATI 18800-1
- 0006h ATI 28800
- 0007h Chips & Technologies 82c451/455/456
- 0008h C&T 82c452
- 0009h C&T 82c453
- 000Ah Genoa 6000 series
- 000Bh Oak OTI-067
- 000Ch Paradise PVGA1a
- 000Dh Paradise WD90C00/WD90C10
- 000Eh Paradise WD90C11/WD90C30/WD90C31
- 000Fh Trident 8800
- 0010h Trident 8900
- 0011h Tseng ET3000
- 0012h Tseng ET4000
- 0013h Video7
- 0014h Cirrus Logic 5400 series
- 0015h S3
- 0016h Trident 8900B/8900C/9000
- --------V-6200C2-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_SVGASTAT" - GET SVGA CHIPSET INFORMATION
- AX = 00C2h
- Return: AX = chipset information (see #2755)
- Note: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- SeeAlso: AX=0025h,AX=00C1h,AX=00C3h
-
- Bitfields for FGDRIVER chipset information:
- Bit(s) Description (Table 2755)
- 0 SVGA kernel initialized
- 1 VESA support enabled
- 2 extended video pages available in modes 13-23
- 3 SVGA chipset has separate read and write banks
- 4-15 reserved (0)
- --------V-6200C3-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_SVGAVER" - GET FASTGRAPH SVGA KERNEL VERSION
- AX = 00C3h
- ES:BX -> variable pointer record (see #2756)
- Note: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- SeeAlso: AX=00C1h,AX=00C2h
-
- Format of FGDRIVER variable pointer record:
- Offset Size Description (Table 2756)
- 00h WORD segment of WORD buffer for major version
- 02h WORD offset of WORD buffer for major version
- 04h WORD segment of WORD buffer for minor version (hundredths)
- 06h WORD offset of WORD buffer for minor version
- --------V-6200C4-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_TCDEFINE" - DEFINE TRANSPARENCY OF COLOR INDEX
- AX = 00C4h
- BX = color index
- CX = transparency (00h opaque, other transparent)
- Notes: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- This function is ignored in text modes
- SeeAlso: AX=00C5h,AX=00C6h
- --------V-6200C5-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_TCMASK" - SET TRANSPARENT COLORS
- AX = 00C5h
- BX = colors to consider transparent (bit 0 = color 0, etc)
- Notes: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- This call is ignored in text modes
- The specified colors are considered transparent by "FG_TCXFER"
- SeeAlso: AX=00C4h,AX=00C6h
- --------V-6200C6-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_TCXFER" - COPY REGION EXCLUDING TRANSPARENT
- AX = 00C6h
- CX = source video page
- DX = destination video page
- ES:BX -> copy record (see #2757)
- Notes: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- Pixels which are in any of the colors defined as transparent with
- "FG_TCMASK" (see AX=00C5h) are left unchanged in the destination
- region
- The source and destination regions must not overlap if they are located
- on the same page
- This call is ignored in text modes
- SeeAlso: AX=00C4h,AX=00C5h,AX=00CAh
- --------V-6200C7-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_TESTMODE" - CHECK IF VIDEO MODE AVAILABLE
- AX = 00C7h
- BX = desired video mode (00h-17h, also 18h-1Dh after "FG_SVGAINIT")
- CX = required number of video pages (ignore memory size if <= 0)
- Return: AX = status
- 0000h mode not available with requested number of pages
- 0001h mode is available
- Note: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- SeeAlso: AX=0005h,AX=00B0h
- --------V-6200C8-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_TEXT" - DISPLAY STRING OF CHARACTERS
- AX = 00C8h
- CX = length of string
- ES:BX -> string
- Notes: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- The string is displayed starting at the text cursor position using the
- current text attribute (text modes) or color index (graphics modes)
- The text cursor position is updated after this call
- SeeAlso: AX=000Ch,AX=0096h,AX=00C9h
- --------V-6200C9-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_TEXTC" - DISPLAY STRING OF CHARACTERS (CLIPPED)
- AX = 00C9h
- CX = length of string
- ES:BX -> string
- Notes: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723)
- The string is displayed starting at the text cursor position using the
- current text attribute (text modes) or color index (graphics modes),
- showing only the portion within the current clipping window
- The text cursor position is updated after this call
- SeeAlso: AX=00C8h
- --------V-6200CA-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_TRANSFER" - COPY REGION
- AX = 00CAh
- CX = source video page
- DX = destination video page
- ES:BX -> copy record (see #2757)
- Notes: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- The source and destination regions must not overlap if they are located
- on the same page
- SeeAlso: AX=009Eh,AX=00A2h,AX=00A5h,AX=00C6h
-
- Format of FGDRIVER copy record:
- Offset Size Description (Table 2757)
- 00h WORD left edge column of source region
- 02h WORD right edge column of source region
- 04h WORD top edge row of source region
- 06h WORD bottom edge row of source region
- 08h WORD left edge of destination
- 0Ah WORD bottom edge of destination
- --------V-6200CB-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_UNPACK" - EXPAND MODE-SPECIFIC BITMAP
- AX = 00CBh
- ES:BX -> variable pointer record (see #2758)
- CX = size of source bitmap in bytes
- Return: result buffer filled
- Note: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723)
- SeeAlso: AX=0083h
-
- Format of FGDRIVER UNPACK variable pointer record:
- Offset Size Description (Table 2758)
- 00h WORD segment of source bitmap
- 02h WORD offset of source bitmap
- 04h WORD segment of buffer for resulting bitmap
- 06h WORD offset of buffer for resulting bitmap
- --------V-6200CC-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_VBADDR" - GET ADDRESS OF VIRTUAL BUFFER
- AX = 00CCh
- BX = virtual buffer handle (0000h-001Fh)
- Return: DX:AX -> virtual buffer
- Note: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723)
- SeeAlso: AX=00CDh,AX=00CEh,AX=00CFh,AX=00D3h
- --------V-6200CD-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_VBALLOC" - CREATE VIRTUAL BUFFER
- AX = 00CDh
- BX = width of virtual buffer in pixels
- CX = height in pixels
- Return: AX = handle for virtual buffer, or
- FFFEh out of memory
- FFFFh virtual buffer table full
- Note: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723)
- SeeAlso: AX=00CCh,AX=00CEh,AX=00D0h,AX=00D1h,AX=00D2h,AX=00D4h
- --------V-6200CE-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_VBCLOSE" - CLOSE ACTIVE VIRTUAL BUFFER
- AX = 00CEh
- Desc: close the active virtual buffer and direct further graphics to the
- active video page
- Note: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723)
- SeeAlso: AX=00CCh,AX=00D1h,AX=00D4h,AX=00D5h,AX=00D9h
- --------V-6200CF-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_VBCOPY" - COPY RECT BETWEEN VIRTUAL BUFFERS
- AX = 00CFh
- ES:BX -> variable record (see #2759)
- CX = handle for source virtual buffer
- DX = handle for destination virtual buffer
- Notes: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723)
- if the destination buffer is the same as the source buffer, the regions
- must not overlap
- SeeAlso: AX=00D0h,AX=00D1h,AX=00D4h,AX=00D6h,AX=00D7h
-
- Format of FGDRIVER VBCOPY variable record:
- Offset Size Description (Table 2759)
- 00h WORD source region's left edge
- 02h WORD source region's right edge
- 04h WORD source region's top edge
- 06h WORD source region's bottom edge
- 08h WORD X coordinate of destination's upper left corner
- 0Ah WORD Y coordinate of destination's upper left corner
- --------V-6200D0-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_VBCUT" - COPY RECT FROM VIDEO TO VIRTUAL BUFFER
- AX = 00D0h
- BX = source region's left edge
- CX = source region's right edge
- DX = source region's top edge
- SI = source region's bottom edge
- DI = X coordinate of destination's upper left corner
- ES = Y coordinate of destination's upper left corner
- Desc: copy a rectangle from the active video page to the active virtual
- buffer
- Note: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723)
- SeeAlso: AX=00CDh,AX=00CFh,AX=00D4h,AX=00D6h
- --------V-6200D1-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_VBDEFINE" - CREATE VIRTUAL BUFFER
- AX = 00D1h
- ES:BX -> memory block for virtual buffer
- CX = buffer width in pixels
- DX = buffer height in pixels
- Return: AX = virtual buffer handle
- FFFFh on error
- Notes: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723)
- the application-provided buffer must be large enough to hold CX*DX
- bytes
- SeeAlso: AX=00CCh,AX=00CDh,AX=00CEh,AX=00D2h,AX=00D4h,AX=00D5h
- --------V-6200D2-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_VBFREE" - RELEASE VIRTUAL BUFFER
- AX = 00D2h
- BX = virtual buffer handle
- Notes: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723)
- this function should be used only for buffers created with FG_VBALLOC
- SeeAlso: AX=00CDh,AX=00D4h,AX=00D5h
- --------V-6200D3-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_VBHANDLE" - GET ACTIVE VIRTUAL BUFFER'S HANDLE
- AX = 00D3h
- Return: AX = handle for active virtual buffer
- Note: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723)
- SeeAlso: AX=00CCh,AX=00D4h
- --------V-6200D4-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_VBINIT" - INITIALIZE VIRTUAL BUFFER ENVIRONMENT
- AX = 00D4h
- Return: nothing
- Notes: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723)
- this function must be called before any other virtual buffer functions
- are used
- SeeAlso: AX=00CDh,AX=00D5h
- --------V-6200D5-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_VBOPEN" - MAKE VIRTUAL BUFFER ACTIVE
- AX = 00D5h
- BX = virtual buffer handle
- Return: AX = status
- 0000h successful
- FFFEh no buffer defined for specified handle
- FFFFh invalid buffer handle
- Note: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723)
- SeeAlso: AX=00CDh,AX=00CEh,AX=00D1h,AX=00D4h,AX=00D9h
- --------V-6200D6-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_VBPASTE" - COPY RECT FROM VIRTUAL BUF TO VIDEO
- AX = 00D6h
- BX = source region's left edge
- CX = source region's right edge
- DX = source region's top edge
- SI = source region's bottom edge
- DI = X coordinate of destination's upper left corner
- ES = Y coordinate of destination's upper left corner
- Desc: copy a rectangle from the active virtual buffer to the active video
- page
- Note: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723)
- SeeAlso: AX=00CFh,AX=00D0h,AX=00D4h,AX=00D7h
- --------V-6200D7-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_VBTCCOPY" - COPY RECTANGLE BETWEEN VIRTUAL BUFS
- AX = 00D7h
- ES:BX -> variable record (see #2760)
- CX = source virtual buffer's handle
- DX = destination virtual buffer's handle
- Desc: copy rectangle from one virtual buffer to another with transparent
- colors
- Notes: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723)
- if the destination buffer is the same as the source buffer, the regions
- must not overlap
- SeeAlso: AX=00CFh,AX=00D0h,AX=00D6h,AX=00D8h
-
- Format of FGDRIVER VBTCCOPY variable record:
- Offset Size Description (Table 2760)
- 00h WORD source region's left edge
- 02h WORD source region's right edge
- 04h WORD source region's top edge
- 06h WORD source region's bottom edge
- 08h WORD X coordinate of destination region's upper left corner
- 0Ah WORD Y coordinate of destination region's upper left corner
- --------V-6200D8-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_VBTCXFER" - COPY RECTANGLE TO ACTIVE VIDEO PAGE
- AX = 00D8h
- BX = source region's left edge
- CX = source region's right edge
- DX = source region's top edge
- SI = source region's bottom edge
- DI = X coordinate of destination's upper left corner
- ES = Y coordinate of destination's upper left corner
- Desc: copy a rectangle from the active virtual buffer to the active video
- page, with transparent colors
- Note: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723)
- SeeAlso: AX=00D6h,AX=00D7h
- --------V-6200D9-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_VBUNDEF" - RELEASE HANDLE FOR VIRTUAL BUFFER
- AX = 00D9h
- BX = virtual buffer handle
- Notes: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723)
- the specified handle must not reference the currently-active virtual
- buffer
- SeeAlso: AX=00D1h,AX=00D5h
- --------V-6200DA-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_VGASTATE" - SAVE/RESTORE VGA CONTROLLER STATE
- AX = 00DAh
- BX = direction (0000h save, else restore)
- Notes: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723)
- this function is only meaningful in modes 0Dh and above
- --------V-6200DB-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_VOICE" - START SOUND
- AX = 00DBh
- BX = channel on TI sound chip
- 1-3 = channels 1-3, 4 = channel 4 with periodic noise,
- 5 = channel 4 with white noise
- CX = frequency in Hz (18-32767 for channels 1-3; 0=512 Hz, 1=1024 Hz,
- 2=2048 Hz for channels 4 and 5)
- DX = volume
- SI = duration in clock ticks (continuous if <= 0)
- Program: FGDRIVER is the external video driver for the shareware
- Fastgraph/Light by Ted Gruber Software
- Notes: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- This function is only available on the PCjr and Tandy 1000 machines
- SeeAlso: AX=0080h,AX=00BCh,AX=00DCh
- --------V-6200DC-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_VOICES" - PLAY SOUNDS IN BACKGROUND
- AX = 00DCh
- ES:BX -> tone array (see #2761)
- CX = number of times to repeat tone array
- Notes: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- This function is only available on the PCjr and Tandy 1000 machines
- SeeAlso: AX=0059h,AX=0081h,AX=00BDh,AX=00DBh
-
- Format of FGDRIVER tone array element:
- Offset Size Description (Table 2761)
- 00h WORD channel number (0000h terminates array)
- 02h WORD frequency
- 04h WORD volume
- 06h WORD duration in 1/72.8 seconds
- --------V-6200DD-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_WAITFOR" - DELAY FOR SPECIFIED DURATION
- AX = 00DDh
- BX = duration in clock ticks
- Return: after delay elapses
- Note: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- SeeAlso: AX=00BFh,INT 1A/AX=FF01h
- --------V-6200DE-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_WAITKEY" - FLUSH KEYBOARD BUFFER AND AWAIT KEY
- AX = 00DEh
- Return: after next key pressed
- Note: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- SeeAlso: AX=000Ah,AX=0046h,AX=0063h,AX=0069h,INT 16/AH=00h
- --------V-6200DF-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_WAITVR" - ENABLE/DISABLE VERTICAL RETRACE WAIT
- AX = 00DFh
- BX = new state (0000h disabled, 0001h enabled)
- Note: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- --------V-6200E0-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_WHERE" - GET CURRENT CURSOR POSITION
- AX = 00E0h
- ES:BX -> variable pointers (see #2762)
- Return: indicated variables filled with cursor row and column for active
- display
- Note: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- SeeAlso: AX=0054h,AX=0058h,AX=006Bh,AX=007Eh
-
- Format of FGDRIVER variable pointers:
- Offset Size Description (Table 2762)
- 00h WORD segment of WORD buffer for cursor row
- 02h WORD offset of WORD buffer for cursor row
- 04h WORD segment WORD buffer for cursor column
- 06h WORD offset WORD buffer for cursor column
- --------V-6200E1-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_XALPHA" - CONVERT SCREEN COLUMN TO CHAR COLUMN
- AX = 00E1h
- BX = screen space column
- Return: AX = character space column containing specified coordinate
- Note: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- SeeAlso: AX=00E2h,AX=00E4h
- --------V-6200E2-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_XCONVERT" - CONVERT CHAR COLUMN TO SCREEN COL
- AX = 00E2h
- BX = character space column
- Return: AX = screen space column of leftmost pixel in specified character col
- Note: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- SeeAlso: AX=00E2h,AX=00E5h
- --------V-6200E3-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_XVIEW" - CONVERT VIEWPORT COORDINATE
- AX = 00E3h
- BX = horizontal viewport coordinate
- Return: AX = screen space X coordinate corresponding to supplied coordinate
- Notes: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- if no viewport has been defined, the returned coordinate will be the
- same as the viewport coordinate
- SeeAlso: AX=00E2h,AX=00E6h
- --------V-6200E4-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_YALPHA" - CONVERT SCREEN ROW TO CHARACTER ROW
- AX = 00E4h
- BX = screen space row
- Return: AX = character space row containing specified coordinate
- Note: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- SeeAlso: AX=00E1h,AX=00E5h
- --------V-6200E5-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_YCONVERT" - CONVERT CHARACTER ROW TO SCREEN ROW
- AX = 00E5h
- BX = character space row
- Return: AX = screen space row of topmost pixel in specified character row
- Note: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- SeeAlso: AX=00E2h,AX=00E4h,AX=00E6h
- --------V-6200E6-----------------------------
- INT 62 u - FGDRIVER v4.02 - "FG_YVIEW" - TRANSLATE VERTICAL VIEWPORT COORDINATE
- AX = 00E6h
- BX = viewport Y coordinate
- Return: AX = screen space row for viewport coordinate
- Program: FGDRIVER is the external video driver for the shareware
- Fastgraph/Light by Ted Gruber Software
- Notes: the FGDRIVER functions are rearranged with each major release, but
- their parameters do not change (see #2723 at AX=0000h)
- if no viewport has been defined, the returned coordinate will be the
- same as the viewport coordinate
- SeeAlso: AX=00E3h,AX=00E5h
- --------T-6201-------------------------------
- INT 62 - Cswitch - GIVE UP REST OF TIME-SLICE
- AH = 01h
- Program: Cswitch is a set of multitasking functions by Herb Rose
- SeeAlso: AH=05h"Cswitch",AH=06h"Cswitch",INT 15/AX=1000h,INT 2F/AX=1680h
- --------N-6201-------------------------------
- INT 62 - BW-TCP - HW DRIVER (ETHDEV.SYS) - NOP for ETHDEV.ODI
- AH = 01h
- Return: CF clear if successful
- CF set on error
- AL = error code
- Range: INT 4C to INT FB, selected by configuration
- SeeAlso: AH=FEh,INT 21/AH=3Fh"BW-TCP",INT 63/AH=24h"BW-TCP"
- SeeAlso: INT 64/AH=01h"BW-NFS"
- --------T-6202-------------------------------
- INT 62 - Cswitch - WAIT FOR SEMAPHORE
- AH = 02h
- DX = semaphore number (0-63)
- Return: AX = FFFFh bad semaphore number
- else success
- SeeAlso: AH=03h"Cswitch",AH=04h"Cswitch"
- --------N-6202-------------------------------
- INT 62 - BW-TCP - HW DRIVER (ETHDEV.SYS) - INITIALIZE
- AH = 02h
- Return: CF clear if successful
- CF set on error
- AL = error code
- SeeAlso: AH=00h"ETHDEV",AH=03h"ETHDEV",AH=FEh,INT 21/AH=3Fh"BW-TCP"
- SeeAlso: INT 63/AH=03h"BW-TCP",INT 63/AH=24h"BW-TCP",INT 64/AH=01h"BW-NFS"
- --------T-6203-------------------------------
- INT 62 - Cswitch - CHECK SEMAPHORE
- AH = 03h
- DX = semaphore number (0-63)
- Return: AX = status
- FFFFh not owned
- else owned
- SeeAlso: AH=02h,AH=04h
- --------N-6203-------------------------------
- INT 62 - BW-TCP - HW DRIVER (ETHDEV.SYS) - GET REAL IP ADDRESS
- AH = 03h
- DS:SI -> DWORD buffer for IP address
- Return: CF clear if successful
- CF set on error
- AL = error code
- Range: INT 4C to INT FB, selected by configuration
- Note: the Beame&Whiteside TCP/IP protocol stack uses two consecutive
- interrupts (62h and 63h by default); the BW-NFS client uses a third
- consecutive interrupt (64h by default) if it is loaded
- SeeAlso: AH=FEh,INT 21/AH=3Fh"BW-TCP",INT 63/AH=24h"BW-TCP"
- SeeAlso: INT 64/AH=01h"BW-NFS"
- --------T-6204-------------------------------
- INT 62 - Cswitch - TRIGGER SEMAPHORE
- AH = 04h
- DX = semaphore number (0-63)
- Return: AX = status
- FFFFh bad semaphore number
- else success
- SeeAlso: AH=02h"Cswitch",AH=03h"Cswitch"
- --------N-6204-------------------------------
- INT 62 - BW-TCP - HW DRIVER (ETHDEV.SYS) - SET ???
- AH = 04h
- BX = ???
- ES:SI -> FAR routine for ???
- Return: CF clear if successful
- CF set on error
- AL = error code
- SeeAlso: AH=FEh,INT 21/AH=3Fh"BW-TCP",INT 63/AH=24h"BW-TCP"
- SeeAlso: INT 64/AH=01h"BW-NFS"
- --------T-6205-------------------------------
- INT 62 - Cswitch - SLEEP
- AH = 05h
- BX = seconds to sleep
- SeeAlso: AH=01h"Cswitch",AH=06h"Cswitch",AH=08h"Cswitch"
- --------N-6205-------------------------------
- INT 62 - BW-TCP - HW DRIVER (ETHDEV.SYS) - ???
- AH = 05h
- ???
- Return: CF clear if successful
- CF set on error
- AL = error code
- SeeAlso: AH=FEh,INT 21/AH=3Fh"BW-TCP",INT 63/AH=24h"BW-TCP"
- SeeAlso: INT 64/AH=01h"BW-NFS"
- --------T-6206-------------------------------
- INT 62 - Cswitch - SUSPEND
- AH = 06h
- SeeAlso: AH=05h"Cswitch",AH=08h"Cswitch"
- --------N-6206-------------------------------
- INT 62 - BW-TCP - HW DRIVER (ETHDEV.SYS) - ???
- AH = 06h
- ???
- Return: CF clear if successful
- CF set on error
- AL = error code
- Range: INT 4C to INT FB, selected by configuration
- Note: the Beame&Whiteside TCP/IP protocol stack uses two consecutive
- interrupts (62h and 63h by default); the BW-NFS client uses a third
- consecutive interrupt (64h by default) if it is loaded
- SeeAlso: AH=FEh,INT 21/AH=3Fh"BW-TCP",INT 63/AH=24h"BW-TCP"
- SeeAlso: INT 64/AH=01h"BW-NFS"
- --------T-6207-------------------------------
- INT 62 - Cswitch - SPAWN
- AH = 07h
- ES:BX -> function address to start executing at
- CX = priority (1-10)
- Return: AX = result/status
- FFFDh no free memory control blocks
- FFFEh no free task control blocks
- FFFFh not enough memory to create new task stack
- >0 the tcb number of the new task, indicating no error
- SeeAlso: AH=0Fh"Cswitch",AH=10h"Cswitch"
- --------N-6207-------------------------------
- INT 62 - BW-TCP - HW DRIVER (ETHDEV.SYS) - ???
- AH = 07h
- DS:SI -> ???
- Return: CF clear if successful
- CF set on error
- AL = error code
- SeeAlso: AH=FEh,INT 21/AH=3Fh"BW-TCP",INT 63/AH=24h"BW-TCP"
- SeeAlso: INT 64/AH=01h"BW-NFS"
- --------T-6208-------------------------------
- INT 62 - Cswitch - WAKE UP TASK
- AH = 08h
- BX = tcb identifier
- SeeAlso: AH=05h,AH=06h
- --------N-6208-------------------------------
- INT 62 - BW-TCP - HW DRIVER (ETHDEV.SYS) - ???
- AH = 08h
- CX = ???
- ES:SI -> ??? buffer (see #2763)
- Return: CF clear if successful
- CF set on error
- AL = error code
- Range: INT 4C to INT FB, selected by configuration
- SeeAlso: AH=FEh,INT 21/AH=3Fh"BW-TCP",INT 63/AH=24h"BW-TCP"
- SeeAlso: INT 64/AH=01h"BW-NFS"
-
- Format of BW-TCP ??? buffer:
- Offset Size Description (Table 2763)
- 00h 6 BYTEs hardware address???
- 06h 6 BYTEs ???
- 0Ch WORD ???
- 0Eh WORD ???
- ----------6208--CXFFFE-----------------------
- INT 62 - MS SQL Server/Sybase DBLIBRARY interface - UNINSTALL/GET PSP ADDR
- AH = 08h
- CX = FFFEh
- DX = FFFFh
- Return: AX = PSP address of resident DBLIBRARY
- Note: this call does not free the memory allocated to the TSR; the calling
- code must do the deallocation.
- SeeAlso: INT 62"DBLIBRARY"
- --------T-6209-------------------------------
- INT 62 - Cswitch - SET PRIORITY
- AH = 09h
- BX = new base priority (1-10)
- Note: the lower the priority is numerically, the more often the task will run
- --------N-6209-------------------------------
- INT 62 - BW-TCP - HW DRIVER (ETHDEV.SYS) - HOOK TIMER INTERRUPT
- AH = 09h
- Return: CF clear if successful
- AX = handler ID
- CF set on error
- AL = error code
- Range: INT 4C to INT FB, selected by configuration
- Note: the Beame&Whiteside TCP/IP protocol stack uses two consecutive
- interrupts (62h and 63h by default); the BW-NFS client uses a third
- consecutive interrupt (64h by default) if it is loaded
- SeeAlso: AH=0Ah"ETHDEV",AH=FEh,INT 21/AH=3Fh"BW-TCP",INT 63/AH=24h"BW-TCP"
- SeeAlso: INT 64/AH=01h"BW-NFS"
- --------T-620A-------------------------------
- INT 62 - Cswitch - TEST MESSAGE QUEUE
- AH = 0Ah
- DX = queue number (0-63)
- Return: AX = result/message size
- 0000h nothing on queue
- FFFFh bad queue number
- else number of bytes in first message in queue
- SeeAlso: AH=0Bh"Cswitch",AH=0Ch"Cswitch"
- --------N-620A-------------------------------
- INT 62 - BW-TCP - HW DRIVER (ETHDEV.SYS) - UNHOOK TIMER INTERRUPT
- AH = 0Ah
- DX = handler ID
- Return: CF clear if successful
- CF set on error
- AL = error code
- SeeAlso: AH=09h"ETHDEV",AH=FEh,INT 21/AH=3Fh"BW-TCP",INT 63/AH=24h"BW-TCP"
- SeeAlso: INT 64/AH=01h"BW-NFS"
- --------T-620B-------------------------------
- INT 62 - Cswitch - SEND MESSAGE
- AH = 0Bh
- CX = number of bytes to write
- DS:SI -> buffer
- DX = queue number (0-63)
- Return: AX = result/message size
- 0000h no message was on queue
- FFFEh triggered by something arriving, redo the call
- FFFFh bad queue number
- else number of bytes in message
- SeeAlso: AH=0Ah"Cswitch",AH=0Ch"Cswitch"
- --------N-620B-------------------------------
- INT 62 - BW-TCP - HW DRIVER (ETHDEV.SYS) - ADD ???
- AH = 0Bh
- AL = ???
- DX = ???
- BP = ???
- ES:SI -> ???
- Return: CF clear if successful
- CF set on error
- AL = error code
- SeeAlso: AH=0Ch"ETHDEV",AH=FEh,INT 21/AH=3Fh"BW-TCP",INT 63/AH=24h"BW-TCP"
- SeeAlso: INT 64/AH=01h"BW-NFS"
- --------T-620C-------------------------------
- INT 62 - Cswitch - READ MESSAGE
- AH = 0Ch
- CX = number of bytes to read
- DS:SI -> buffer
- DX = queue number (0-63)
- Return: AX = status
- FFFFh bad queue number
- else number of bytes transferred
- SeeAlso: AH=0Ah,AH=0Bh
- --------N-620C-------------------------------
- INT 62 - BW-TCP - HW DRIVER (ETHDEV.SYS) - REMOVE ???
- AH = 0Ch
- DX = ???
- BP = ???
- Return: CF clear if successful
- CF set on error
- AL = error code
- Range: INT 4C to INT FB, selected by configuration
- Note: the Beame&Whiteside TCP/IP protocol stack uses two consecutive
- interrupts (62h and 63h by default); the BW-NFS client uses a third
- consecutive interrupt (64h by default) if it is loaded
- SeeAlso: AH=0Bh"ETHDEV",AH=FEh,INT 21/AH=3Fh"BW-TCP",INT 63/AH=24h"BW-TCP"
- SeeAlso: INT 64/AH=01h"BW-NFS"
- --------T-620D-------------------------------
- INT 62 - Cswitch - DON'T ALLOW TASK TO BE SWAPPED OUT
- AH = 0Dh
- SeeAlso: AH=0Eh"Cswitch"
- --------N-620D-------------------------------
- INT 62 - BW-TCP - HW DRIVER (ETHDEV.SYS) - NOP for ETHDEV.ODI
- AH = 0Dh
- Return: CF clear if successful
- CF set on error
- AL = error code
- SeeAlso: AH=FEh,INT 21/AH=3Fh"BW-TCP",INT 63/AH=24h"BW-TCP"
- SeeAlso: INT 64/AH=01h"BW-NFS"
- --------T-620E-------------------------------
- INT 62 - Cswitch - ALLOW TASK TO BE SWAPPED OUT
- AH = 0Eh
- SeeAlso: AH=0Dh"Cswitch"
- --------N-620E-------------------------------
- INT 62 - BW-TCP - HW DRIVER (ETHDEV.SYS) - BEGIN CRITICAL SECTION
- AH = 0Eh
- Return: CF clear if successful
- CF set on error
- AL = error code
- SeeAlso: AH=0Fh"ETHDEV",AH=10h"ETHDEV",AH=FEh,INT 21/AH=3Fh"BW-TCP"
- SeeAlso: INT 63/AH=03h"BW-TCP",INT 63/AH=24h"BW-TCP",INT 64/AH=01h"BW-NFS"
- --------T-620F-------------------------------
- INT 62 - Cswitch - LOAD AND RUN PROGRAM FROM DISK
- AH = 0Fh
- ES:BX -> command line
- CX = priority (1-10)
- DX = background flag (nonzero allows loading to EMS)
- Return: AX = status
- 0000h task loader queue is full
- 0001h no error
- SeeAlso: AH=07h"Cswitch",AH=10h"Cswitch",AH=13h"Cswitch"
- --------N-620F-------------------------------
- INT 62 - BW-TCP - HW DRIVER (ETHDEV.SYS) - END CRITICAL SECTION
- AH = 0Fh
- Return: CF clear if successful
- CF set on error
- AL = error code
- Range: INT 4C to INT FB, selected by configuration
- Note: the Beame&Whiteside TCP/IP protocol stack uses two consecutive
- interrupts (62h and 63h by default); the BW-NFS client uses a third
- consecutive interrupt (64h by default) if it is loaded
- SeeAlso: AH=0Eh"ETHDEV",AH=10h"ETHDEV",AH=FEh,INT 21/AH=3Fh"BW-TCP"
- SeeAlso: INT 63/AH=03h"BW-TCP",INT 63/AH=24h"BW-TCP",INT 64/AH=01h"BW-NFS"
- --------T-6210-------------------------------
- INT 62 - Cswitch - TERMINATE SPAWNED PROGRAM
- AH = 10h
- SeeAlso: AH=07h"Cswitch",AH=0Fh"Cswitch"
- --------N-6210-------------------------------
- INT 62 - BW-TCP - HW DRIVER (ETHDEV.SYS) - QUERY CRITICAL SECTION
- AH = 10h
- Return: CF clear if no critical section active
- CF set if in critical section
- SeeAlso: AH=0Eh"ETHDEV",AH=0Fh"ETHDEV",AH=FEh,INT 21/AH=3Fh"BW-TCP"
- SeeAlso: INT 63/AH=03h"BW-TCP",INT 63/AH=24h"BW-TCP",INT 64/AH=01h"BW-NFS"
- --------T-6211-------------------------------
- INT 62 - Cswitch - GET TCB INFORMATION
- AH = 11h
- ES:BX -> a pointer which will be set to the tcb address
- Return: AX = tcb indentifier
- SeeAlso: AH=12h
- --------N-6211-------------------------------
- INT 62 - BW-TCP - HW DRIVER (ETHDEV.SYS) - SET ???
- AH = 11h
- ES:SI -> ???
- Return: CF clear
- SeeAlso: AH=FEh,INT 21/AH=3Fh"BW-TCP",INT 63/AH=24h"BW-TCP"
- SeeAlso: INT 64/AH=01h"BW-NFS"
- --------T-6212-------------------------------
- INT 62 - Cswitch - GET TCB ADDRESS
- AH = 12h
- ES:BX -> a pointer which will be set to the tcb table address
- Return: AX = tcb indentifier
- SeeAlso: AH=11h"Cswitch"
- --------N-6212-------------------------------
- INT 62 - BW-TCP - HW DRIVER (ETHDEV.SYS) - GET SOCKET NUMBER???
- AH = 12h
- Return: CF clear if successful
- AX = socket number??? (memory variable incremented after reading)
- CF set on error
- AL = error code
- Range: INT 4C to INT FB, selected by configuration
- Note: the Beame&Whiteside TCP/IP protocol stack uses two consecutive
- interrupts (62h and 63h by default); the BW-NFS client uses a third
- consecutive interrupt (64h by default) if it is loaded
- SeeAlso: AH=FEh,INT 21/AH=3Fh"BW-TCP",INT 63/AH=24h"BW-TCP"
- SeeAlso: INT 64/AH=01h"BW-NFS"
- --------T-6213-------------------------------
- INT 62 - Cswitch - CHECK STATUS OF PREVIOUS LOAD_TASK
- AH = 13h
- Return: AX = result
- FFFCh no Memory Control Blocks available
- FFFDh no TCBs available
- FFFEh insufficient memory
- FFFFh cannot open file
- 0000h load in progress (not done yet)
- else tcb indentifier
- SeeAlso: AH=0Fh
- --------N-6213-------------------------------
- INT 62 - BW-TCP - HW DRIVER (ETHDEV.SYS) - ???
- AH = 13h
- CX = ???
- Return: CF clear if successful
- AL = 00h
- CF set on error
- AL = error code
- SeeAlso: AH=FEh,INT 21/AH=3Fh"BW-TCP",INT 63/AH=24h"BW-TCP"
- SeeAlso: INT 64/AH=01h"BW-NFS"
- --------N-6214-------------------------------
- INT 62 - BW-TCP - HW DRIVER (ETHDEV.SYS) - ???
- AH = 14h
- ES:SI -> ???
- Return: CF clear if successful
- AL = 00h
- CF set on error
- AL = error code
- SeeAlso: AH=FEh,INT 21/AH=3Fh"BW-TCP",INT 63/AH=24h"BW-TCP"
- SeeAlso: INT 64/AH=01h"BW-NFS"
- --------N-6215-------------------------------
- INT 62 - BW-TCP - HW DRIVER (ETHDEV.SYS) - GET ???
- AH = 15h
- Return: CF clear if successful
- AX = ??? (destroyed???)
- CF set on error
- AL = error code
- Range: INT 4C to INT FB, selected by configuration
- Notes: call this function after reading the "ETHDEV27" device
- the Beame&Whiteside TCP/IP protocol stack uses two consecutive
- interrupts (62h and 63h by default); the BW-NFS client uses a third
- consecutive interrupt (64h by default) if it is loaded
- SeeAlso: AH=FEh,INT 21/AH=3Fh"BW-TCP",INT 63/AH=24h"BW-TCP"
- INT 64/AH=01h"BW-NFS"
- --------N-6216-------------------------------
- INT 62 - BW-TCP - HW DRIVER (ETHDEV.SYS) - ???
- AH = 16h
- ???
- Return: CF clear if successful
- CF set on error
- AL = error code
- SeeAlso: AH=FEh,INT 21/AH=3Fh"BW-TCP",INT 63/AH=24h"BW-TCP"
- SeeAlso: INT 64/AH=01h"BW-NFS"
- --------N-6217-------------------------------
- INT 62 - BW-TCP - HW DRIVER (ETHDEV.SYS) - ???
- AH = 17h
- DX = segment of ???
- Return: CF clear
- SeeAlso: AH=FEh,INT 21/AH=3Fh"BW-TCP",INT 63/AH=24h"BW-TCP"
- SeeAlso: INT 64/AH=01h"BW-NFS"
- --------N-6218-------------------------------
- INT 62 - BW-TCP - HW DRIVER (ETHDEV.SYS) - ALLOCATE AND MAP EMS FOR DRIVER
- AH = 18h
- Return: CF clear if successful
- CF set on error
- AL = error code
- Range: INT 4C to INT FB, selected by configuration
- Notes: calls function 17h after EMS allocated and mapped
- the Beame&Whiteside TCP/IP protocol stack uses two consecutive
- interrupts (62h and 63h by default); the BW-NFS client uses a third
- consecutive interrupt (64h by default) if it is loaded
- SeeAlso: AH=FEh,INT 21/AH=3Fh"BW-TCP",INT 63/AH=03h"BW-TCP",INT 63/AH=24h
- SeeAlso: INT 64/AH=01h"BW-NFS"
- --------R-6247-------------------------------
- INT 62 - PC Tools v7 COMMUTE - ???
- AH = 47h
- AL = subfunction (00h-31h)
- ???
- CF set
- Return: ???
- Program: COMMUTE is a remote-control program bundled with Central Point
- Software's PC Tools
- --------R-6248-------------------------------
- INT 62 - PC Tools v7 COMMUTE - ???
- AH = 48h
- AL = ???
- ???
- CF set
- Return: ???
- --------R-6249-------------------------------
- INT 62 - PC Tools v7 COMMUTE - ???
- AH = 49h
- ???
- CF set
- Return: ???
- Note: may be the same as AH=4Ch
- --------R-624A-------------------------------
- INT 62 - PC Tools v7 COMMUTE - ???
- AH = 4Ah
- AL = subfunction (00h-46h)
- ???
- CF set
- Return: ???
- --------R-624B--BX1234-----------------------
- INT 62 - PC Tools v7 COMMUTE - ???
- AH = 4Bh
- BX = 1234h
- CX = 1234h
- ES = ???
- CF set
- Return: ???
- Program: COMMUTE is a remote-control program bundled with Central Point
- Software's PC Tools
- --------R-624C-------------------------------
- INT 62 - PC Tools v7 COMMUTE - ???
- AH = 4Ch
- BL = subfunction
- 00h ???
- 02h ???
- Return: CF clear if successful
- CF set on error
- --------R-626262-----------------------------
- INT 62 - PC Tools v7 COMMUTE - INSTALLATION CHECK
- AX = 6262h
- CF set
- Return: AX = 0000h
- BX = segment of resident code's PSP
- Program: COMMUTE is a remote-control program bundled with Central Point
- Software's PC Tools
- --------s-62C0-------------------------------
- INT 62 U - GWBTSR - API
- AH = C0h
- AL = function
- 00h installation check
- Return: AX = 00FFh if installed
- 01h ???
- Program: GWBTSR is a huge (48K) resident mixer controller for the Gateway 2000
- sound card (OEM version of Aztech Sound Galaxy)
- Index: installation check;GWBTSR
- --------N-62FE-------------------------------
- INT 62 - BW-TCP - ETHDRV.SYS - MAP EMS PAGE FRAME
- AH = FEh
- AL = direction
- 00h map in driver's memory block
- 01h map out driver's memory block
- Return: CF clear if successful
- CF set on error
- AL = error code
- Range: INT 4C to INT FB, selected by configuration
- Notes: this function is supported by at least the SLIP and ODI versions of
- ETHDEV.SYS
- the Beame&Whiteside TCP/IP protocol stack uses two consecutive
- interrupts (62h and 63h by default); the BW-NFS client uses a third
- consecutive interrupt (64h by default) if it is loaded
- SeeAlso: INT 21/AH=3Fh"BW-TCP",INT 62/AH=00h"ETHDEV",INT 62/AH=18h"ETHDEV"
- SeeAlso: INT 63/AH=03h"BW-TCP",INT 63/AH=24h,INT 64/AH=FEh
- --------!---Section--------------------------
-